![]() |
#2
shadow_rong2010-11-04 13:47
|

#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();
};
#endif
person类中的函数都容易实现#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();
};
#endif
但是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;
}
这两个函数是我写的 可是不能实现~比较郁闷 求高手们指点 怎么改这个错误