Qt 5构建错误:测试表达后的额外字符

Sha*_*ham 19 c++ qt qt5

我正在努力学习Qt 5.3,这是我的第一个程序(hello world).当我尝试构建时,它会显示以下错误:

测试表达后的额外字符.

我无法理解为什么会出现这个错误.我刚从互联网上拿了一些简单的代码来检查我是否正确安装了Qt.这是代码:

#include <QApplication>
#include <QPushButton>
int main(int argc, char **argv)
{
    QApplication app (argc, argv);
    QPushButton button ("Hello world !");
    button.show();
    return app.exec();
}
Run Code Online (Sandbox Code Playgroud)

错误显示在第3,5,6,8行.我对Qt完全不熟悉,所以请给出一个简单的解释.

mjk*_*k99 45

检查.pro文件.有时这是因为你没有最后一行的末尾有一个黑色:

HEADERS += Qt/mainwindow.h \
    Qt/MPrintableWidget.h \
    Qt/MPrintableWidgetGroup.h    # Oooops forgot the \ here
    Qt/MFixedSizeDialog.h \
    Qt/MScreenPage.h
Run Code Online (Sandbox Code Playgroud)

除了底部之外的每一行都需要以反斜杠结尾.


Edw*_*ard 3

该代码在这里编译、链接和运行得很好,所以我唯一能想到的是你的机器上的包含文件有问题。

首先,确保您使用的是 Qt5 并且拥有 Qt5 包含文件。

其次,您可以尝试从命令行编译它。这是我刚刚在带有 Qt5 和 g++ 的 Linux 机器上使用的:

g++ -fPIC -I /usr/include/qt5/QtWidgets -I /usr/include/qt5 qttest.cpp -o qttest -lQt5Core -lQt5Widgets
Run Code Online (Sandbox Code Playgroud)

您还没有说明您正在使用哪个操作系统,或者您是如何构建的。无论您使用什么,您都需要验证它是否确实使用了正确的文件。