电话本管理系统的实现
程序代码:
#ifndef PHONEMANAGER_H #define PHONEMANAGER_H #include <vector> #include "Person.h" using namespace std; class CManager { private: vector<CPerson> m_vMembers; public: void deleteMember(string vName); void addMember(CPerson vMember); void insertMember(); bool findMember(string vName); void deleteAll(); }; #endif #ifndef PERSON_H #define PERSON_H #include <string> using namespace std; class CPerson { private: string m_sName; int m_iPhoneNumber; public: CPerson(); CPerson(string vName,int vPhoneNumber); string getName(); int getPhoneNumber(); }; #endifperson类中的函数都容易实现
但是manager类中的函数 findMember(string vName);deleteMember(string vName);void insertMember(); 实现起来比较困难
程序代码:
void CManager::deleteMember(string vName) { for( unsigned int i = 0; i<m_vMembers.size(); i++ ) { if( !strcmp(m_vMembers[i].getName().c_str(),vName.c_str()) ) m_vMembers.erase(m_vMembers[i]); } } bool CManager::findMember(string vName) { for( unsigned int i = 0; i<m_vMembers.size(); i++ ) { if( !strcmp(m_vMembers[i].getName().c_str(),vName.c_str()) ) { cout<<"你要查找的电话为:"<<endl; cout<<m_vMembers[i].getName()<<m_vMembers[i].getPhoneNumber<<endl; return true; } } return false; }
这两个函数是我写的 可是不能实现~比较郁闷 求高手们指点 怎么改这个错误