在 Qt5.4.1 中找不到类型 qintptr

Type qintptr not found in Qt5.4.1

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

void incomingConnection(int socketDescriptor); 

对于socketDescriptor有整数类型,但是对于Qt5.5,这个方法已经改变了,有如下声明:

void incomingConnection (qintptr socketDescriptor);

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

我添加了头文件

#include <QtGlobal>

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

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

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