1. 读文档与代码
* MCS
class IMcs : public IOption
{
public:
...
virtual RtResult JoinChannel(const CInfoSID& userInfoSID, const CInfoSID& channelID, IInfoSvrPort* pSrcPort = NULL) = 0;
virtual RtResult LeaveChannel(const CInfoSID& userInfoSID, const CInfoSID& channelID, IInfoSvrPort* pSrcPort = NULL) = 0;
virtual RtResult SendData(IInfoSvrPort* pSrcPort,
const CInfoSID& destInfoSID,
CRtMessageBlock& Data,
DATAFLAG DataFlag = DATA_FLAG_COMMAND,
DATA_Priority DataPriority = DATA_PRIORITY_HIGH) = 0; //发送数据到Port
};
Q: Why既有CInfoSID又有IInfoSvrPort?它们到底什么关系?
A:可能和网络线程与主线程的区分有关。
* Port
Q: 这里的port与client sesion里的cconfport有什么关系吗?
2. 杂问
Q:VC6如何看一个类的子类?