在大家开发网络通讯软件的时候,应该都碰到过这种情况,在定义好通讯协议后要在程序中实现协议相应的功能。如:
一个聊天程序有如下定义:
1……登陆
2……获取好友列表
3……修改自己资料
…
…
N
……退出
每个功能由如下函数实现:
登陆
Void Login(UserIinfouser,Messagemsg);
Void Login(UserIinfouser,Messagemsg);
获取好友列表
void GetFriendList(UserInfouser,Messagemsg);
void GetFriendList(UserInfouser,Messagemsg);
修改自己资料
void ModifySelfInfomation(UserInfouser,Messagemsg);
void ModifySelfInfomation(UserInfouser,Messagemsg);
…
…
退出
Void
Logout(UserInfouser,Messagemsg);
那现在我们要将它一一对应起来,我们该怎么做呢?很多人也许会这样做




























让我们先定义一个委托和它的数组:
private delegate void AnalyzerHandler(UserInfo user, Message message);
static AnalyzerHandler[] MainAnalyzer;
然后将函数都放到这个数组里:

















