永发信息网

不太明白CSocket的OnAccept

答案:2  悬赏:0  手机版
解决时间 2021-03-24 20:50
比如说我们有两个继承CSocket的类,一个是CClientSocket一个是CServerSocket.当然我们要用client去connect那个Server,然后一旦制定对了端口和IP,connect()会触发CServerSocket对象的OnAccept()函数,然后好多程序里面会这样写
void CServerSocket::OnAccept(int nErrorCode)
{
CClientSocket * m_pNewClient = new CClientSocket();
ASSERT(m_pNewClient != NULL);
Accept(*m_pNewClient);

CSocket::OnAccept(nErrorCode);
}

这就是说你随便的建立了一个心的CClientSocket对象来让ServerSocket接受,这样接受怎么保证是和请求连接的客户端Socket一致?不太明白啊,这个新建立的ClientSocket既没有制定IP,也没有端口,ServerSocket怎么会知道和谁去通信呢?

其实我的核心问题就是说
Accept(*m_pNewClient);
这个函数内部参数m_pNewClient是在服务器上面随随便便new出来的一个和客户端毫不相干的Socket,这样他Accept这个会有什么意义呢?
最佳答案
Accept(*m_pNewClient);

这个函数起了你所说的哪些作用
全部回答
首先定义一个自己的类如cmy类,继承csocket。在cmy类中的函数名如果在csocket中有,即发生重载。换句话说,就是子类中的函数,用父类存在的函数的名称,就发生重载,重载时,就可以重新定义函数参数,函数定义了。懂没
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
The little girl seems to a lot since I las
关于《鲸》的作文,200字
老婆不关心老公的句子,为什么老公永远不相信
我要跪了... LOL服务器 繁忙 怎么解决 在网吧
狗头泾港我想知道这个在什么地方
鸽-2012-02-315215天火特比是谁的鸽子电话182
创维29T68HT电源故障开机指示灯闪一下就灭了
城市英雄这个地址在什么地方,我要处理点事
如图所示,ab、cd为铁块.当S闭合后,ab、cd
眉山月半轮秋引入平羌江水流的诗句
轿车后胎被1omm的钢筋扎穿透能否补
坚果por像素怎么样,,比魅族的手机像素好吗
怎样申请微信,怎样用手机申请微信号
射洪县广兴镇龙宝中学校地址有知道的么?有点
我想下载英语字母
推荐资讯
在贴吧里被撤销吧主管理的用户发言后能恢复吧
在CF生化模式中跑酷怎么可以跳的很远?
精诚教育(抚州南城县)地址有知道的么?有点事
周星驰版唐伯虎点秋香,其中有个片段是,装华
中国那些山上有寺庙,山很美的,寺庙很清净,
你才十几岁
125x^3=8
姓陈的女性与姓范的男性配吗?
裤子和T恤,100%棉的和60%棉+40%涤纶的,哪种
穿衬衫不打领带的话,最上面的扣子还需要系上
锦周路在哪里啊,我有事要去这个地方
橡胶开了空仓忘记平仓,进入交割月会有什么后
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?