分类: C/C++
2008-08-07 17:40:32
二、详细设计
1、数据库设计
本系统只是一个消息通信模型,这里的数据库设计比较简单。
ER图:
User (No , Name ,Password ,G#) 候选键:No 外键:G# Group (G# , GroupName ,Demo ) 主键 :G#
2、消息格式设计
<1>、传送的消息共有5类------登录消息,验证返回消息,普通消息,用户列表消息,通知消息。定义一个枚举类型:
enum MSGTYPE {LOGIN , LOGINResponse , CHATTING , USERList , NOTICE};
<2>、定义消息类
class CMsg : public CObject { public: int m_eType; //枚举类型,记录消息类型 CString m_strMsg; //消息 CMsg(); virtual ~CMsg(); void Serialize(CArchive &ar); //消息类系列化函数,发送和接受消息时用。 };<3>、m_strMsg 为消息类中存放消息的成员,它的具体格式随着消息类型m_eType不同而不同。
m_eType | m_strMsg |
LOGIN | 呢称|密码 |
LOGINResponse | GOOD|欢迎!(BOSS) 或 FAILED|验证失败! |
CHATTING | 发给(来自)的用户名|消息内容 |
USERList | 呢称1|呢称2|…|呢称n|END |
NOTICE | ALL|消息内容 或 来自的用户|消息内容 |