消息解说:
Message处理消息,Folder存放Message消息,一个Message消息可以放入多个文件夹Folder,一个Folder可以存放多个Message
按照此种方式设置了Message类插入消息,移除消息,将消息放入所有文件夹,移除所有文件夹中的消息,Folder类存放消息,移除消息
class Folder;
class Message
{
public:
Message(const string str = ""); //构造函数
~Message(void); //析构函数
Message(const Message& msg);//复制构造函数
Message& operator=(const Message & msg); //赋值操作符
int operator!=(const Message & msg); //!=操作符
int AddFolder(Folder*); //插入当前的文件夹集合中
int RemoveFolder(Folder*);//从当前的文件夹集合中移除
int SaveMsg(Folder &); //放入指定文件夹
int RemoveMsg(Folder &); //从指定文件夹删除
private:
string contents; //信息正文
set<Folder*> folders; //当前消息所在文件夹的集合
int PutMsgToFolders(const set<Folder*>&); //将本条消息加入所有文件夹
int RemoveMsgFromFolder(); //将本条消息从所有文件夹移除
};
class Folder{
public:
Folder();
~Folder();
int AddMsg(Message*); //将消息加入当前