直接上代码,最好就按照这种格式来写,这种格式能够正确输出带空格的字符串,为什么会有这么多的转义字符在网上查了一下是因为要经历qmake shell等操作的缘故,更加详细的解释不知道,希望有知道的大佬能够在评论区告知。
APPVERSION = 1.0.0
QMAKE_TARGET_PRODUCT = "MyApp"
QMAKE_TARGET_COMPANY = "Company"
QMAKE_TARGET_COPYRIGHT = "Copyright (c) by Company"
DEFINES += APP_VERSION=\"\\\"$${APPVERSION}\\\"\" \
APP_PRODUCT=\"\\\"$${QMAKE_TARGET_PRODUCT}\\\"\" \
APP_COMPANY=\"\\\"$${QMAKE_TARGET_COMPANY}\\\"\" \
APP_COPYRIGHT=\"\\\"$${QMAKE_TARGET_COPYRIGHT}\\\"\"
在pro文件中使用
Widget::Widget(QWidget *parent) :
QWidget(parent),
ui(new Ui::Widget)
{
ui->setupUi(this);
qDebug() << APP_VERSION;
qDebug() << APP_COPYRIGHT;
}
修改pro文件后的内容应该先qmake在重新构建对应的项目才能够正常运行。release 和 debug版本生成的makefile文件是不一样的如果想要查看makefile的内容应该注意版本。