在 Qt5.4.1 中找不到类型 qintptr

Posted

技术标签:

【中文标题】在 Qt5.4.1 中找不到类型 qintptr【英文标题】:Type qintptr not found in Qt5.4.1 【发布时间】:2016-04-08 10:03:06 【问题描述】:

我正在使用 Qt5.4.1,并实现一个服务器-客户端应用程序。 在QTcpServer类中方法:

void incomingConnection(int socketDescriptor); 

socketDescriptor 具有整数类型,但对于 Qt5.5,此方法已更改并具有以下声明:

void incomingConnection (qintptr socketDescriptor);

问题是我的编译器没有找到 typedef qintptr。错误消息是 qintptr 尚未声明。

我已经添加了头文件

#include <QtGlobal>

但是编译器还是没有找到这个类型。

当我将qintptr 更改为quintptr 时,编译器会找到它,但是这种类型会出现类型不匹配错误。我该如何解决这个问题?

【问题讨论】:

也许您安装了多个 Qt? 你能在一个新的小项目中重现错误吗? @danielfranca 当我新建一个小项目时,例如foprtuneServer例子没有报错,小项目编译运行没有问题 【参考方案1】:

问题是项目是用qt5打开的,但是还是有一些对老版本qt(4.8.x)的引用。因此它在路径/usr/include/QtCore/qglobal.h 中寻找qtptr。我已将路径更改为 /opt/Qt5.../QtCore/qglobal.h 问题解决了

【讨论】:

在哪里可以更改? @Alexander 在左侧栏的 QtCreator 中,您可以找到 Projects 图标,单击它,然后在 Tab Build&Run 下您可以找到两个按钮 Build、Run,在这些按钮上方,您可以更改工具包到支持 qintptr 类型的 Qt5.x 版本

以上是关于在 Qt5.4.1 中找不到类型 qintptr的主要内容,如果未能解决你的问题,请参考以下文章

x:在用户控件库中找不到类型

在 Xamarin Studio 中找不到类型或命名空间名称“页面”

为啥 Visual Studio 显示错误,提示在类型 Window 中找不到 Windows.Resources?

错误:在颤振中找不到类型“ui.TextHeightBehavior”

在 stripe.NET-payments 基本示例(Xamarin)中找不到类型

阿波罗服务器 2.0。在文档中找不到类型“上传”