• 5512阅读
  • 4回复

初学QT的TCP编程,有几点不明白。。 [复制链接]

上一主题 下一主题
离线mimixi666
 
只看楼主 倒序阅读 楼主  发表于: 2012-06-23
关键词: 初学QTTCP编程
我是完全复制书上的程序的,虽然能运行成功了,但是代码中有几个地方不明白。。求求解。。
谢谢
程序如下:
QList<TcpClientSocket*> tcpClientSocketList; //这个尖括号代表什么意思??
connect(tcpClientSocket,SIGNAL(updateClients(QString,int)),this,SLOT(updateClients(QString,int)));//上面的那个为什么信号和槽是一样的??

emit updateServer(msg,length);//里面是没有函数定义,那它怎么成为信号的?



QString msg = buf;//这两条有什么用??都没有执行的函数的?是不是只是提醒的作用而已??
emit updateClients(msg,length);



connect(server,SIGNAL(updateServer(QString,int)),SLOT(updateServer(QString,int)));
   //上面信号为什么和槽的都是一样的??这样代表什么意思??


离线mimixi666
只看该作者 1楼 发表于: 2012-06-23
怎么没人理我这个新手。。。是因为太新了吗??
去了那么多论坛都没有人理我的。。。。
离线ffii4455

只看该作者 2楼 发表于: 2012-06-23
呵呵,不是没有人理你。是放假大牛们都去休息了。
在说这几个问题之前,我觉得楼主的C++基础有些薄弱,QT其实可以理解成C++上的一个图像库。

QList<TcpClientSocket*> tcpClientSocketList; //这个尖括号代表什么意思??
   QList是一个容器类,理解成链表吧。尖括号是C++里的模板

connect(tcpClientSocket,SIGNAL(updateClients(QString,int)),this,SLOT(updateClients(QString,int)));//上面的那个为什么信号和槽是一样的??
   它们应该是来自不同的类

emit updateServer(msg,length);//里面是没有函数定义,那它怎么成为信号的?
   肯定是定义了的,你要仔细看看头文件。

QString msg = buf;//这两条有什么用??都没有执行的函数的?是不是只是提醒的作用而已??
emit updateClients(msg,length);
   信号的“函数”不需要执行,只是起到传递参数的作用。相当于以信号所给的参数运行连接的槽
离线mimixi666
只看该作者 3楼 发表于: 2012-06-23
好的,上面的问题都明白了,但是中间还有少些东西没有明。。。
等我整理好。。再问问你。。话说能不能留下个联系方式,邮箱或者QQ??
离线ffii4455

只看该作者 4楼 发表于: 2012-06-24
回 3楼(mimixi666) 的帖子
快速回复
限100 字节
 
上一个 下一个