我在写一个 tcp通信的 程序 ,在客户端 会定义 一些信号与槽。
connect(dialog,SIGNAL(signsend()),this,SLOT(ClientSendData()),Qt::UniqueConnection);
connect(this,SIGNAL(acksignup()),dialog,SLOT(ackrec()),Qt::UniqueConnection);
这里的dialog是注册子界面,this是主界面,然后相当于 子界面 发送一个signsend()信号给主界面,主界面发送信息给服务器,服务器返回信息给主界面,主界面又把信息发给注册子界面。
为什么最后我的注册子界面得到的反馈是重复多次的,每次再进行注册,进入注册子界面,这个ackrec()就重复执行了多次,,我都用了Qt::UniqueConnection。
经过测试,服务器收到的信息不是重复的,也就是说ClientSendData()是执行了单次,acksignup()也执行了单词,只有ackrec()执行了多次。
希望老哥们能帮忙看一下,谢谢!