socket connect() 被误认为是 QT connect()

Posted

技术标签:

【中文标题】socket connect() 被误认为是 QT connect()【英文标题】:socket connect() being mistaken for QT connect() 【发布时间】:2017-04-01 17:03:29 【问题描述】:

我正在尝试创建从我的 QT 应用程序到服务器的套接字连接(常规套接字,而不是 QTcpSocket),以从服务器接收数据。 问题是,connect 方法在编译时给出了错误,并指出了用于将信号连接到插槽的 QT connect 方法的方向。 如何告诉编译器忽略 QT 的信号和槽函数,而是找到原始的 socket.h 连接函数?

【问题讨论】:

您使用的是哪个套接字? Qt 中没有只命名为 socket 的类。它是一个 QAbstractSocket 吗? 不是QT类,是sys/types.h中包含的系统函数 【参考方案1】:

你应该写

::connect(...);

使用正确的功能。这可确保从全局命名空间进行解析。

【讨论】:

以上是关于socket connect() 被误认为是 QT connect()的主要内容,如果未能解决你的问题,请参考以下文章

matlab中connect函数用法

关于Qt中的信号槽连接connect函数

关于winsock2中的connect函数

connect()的函数说明

QT 套接字等待用户输入

QT程序socket的readyRead信号不触发