首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用QPointer和QObject::连接C++11

使用QPointer和QObject::连接C++11
EN

Stack Overflow用户
提问于 2015-06-09 07:23:32
回答 1查看 786关注 0票数 0

我正在使用QT5.4,并试图在发出来自我的QTcpSocket的“断开”信号时恢复接受新的连接。因此,我分别用.h和.cpp文件编写了以下内容:

代码语言:javascript
运行
复制
QPointer<QTcpServer> tcpServer; // in .h file

connect(tcpSocket, &QAbstractSocket::disconnected, [=](){
        tcpServer->resumeAccepting(); // in .cpp file
    });

如您所见,我将QPointer类用于tcpSocket。使用上述代码,我无法构建我的程序并接收到“调用.没有匹配函数”。错误,而在没有QPointer的情况下定义QPointer时没有任何问题。

我该如何解决这个问题?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-06-09 07:54:19

直接联系会更明智。

代码语言:javascript
运行
复制
 connect(tcpSocket, &QAbstractSocket::disconnected, 
         tcpServer, &QTcpServer::resumeAccepting);

请注意,nextPendingConnection的父级设置为QTcpServer,因此还可以通过以下方式访问服务器:

代码语言:javascript
运行
复制
 auto tcpServer = qobject_cast<QTcpServer *>(sender()->parent());
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30725459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档