最近想做个简易聊天工具,现在遇到一个
问题,如果客户端QTcpSocket程序退出的话,客户端Socket指针
会产生一个disconnected()信号,这个信号可以连接一个槽函数进行处理。
但是这个disconnected()发出的信号并
没有参数,槽函数不知道是哪个客户端Socket退出了,
因为我用了QMultiMap<QString,QTcpSocket*>来保存客户端的IP地址和它们的Socket指针,
如果不知道哪个客户端Socket退出的话QMultiMap<QString,QTcpSocket*>就无法
删除这个退出的客户端Socket指针了。
我新写了MyTcpSocket 继承了QTcpSocket这个类,新写了disconnected(QTcpSocket*)信号,不过似乎只能在客户端使用
才有
效果,服务器端退出时客户端能接收到信号,但是在服务器端程序里不起作用。
谁有办法怎样才能获取客户端断开链接时的Socket指针?
[ 此帖被hats1987在2011-02-17 15:03重新编辑 ]