在QT 5.12之前,我们在.pri
文件中有QMAKE_CXXFLAGS += /std:c++latest
,但是在QT 5.12之后,c++latest
和 c++14
均被视为Visual Studio命令命令行参数。.vcxproj
项目文件。
我可以通过config += c++17
到达C 17,但是我得到了此错误:Command line warning D9025: overriding '/std:c++latest' with '/std:c++17'
。
使用Qmake创建的项目文件时,如何在Visual Studio 2019中使用最新的C 标准?换句话说,如何使Qmake自动插入其自己的-std
选项?
编辑:我对C 14自动应用是错误的。另一个.pri文件已将其设置。
在QT 5.13中,您可以通过添加
来解决问题CONFIG += c++2a c++1z c++14
到您的.pro文件。C 2A值映射到/std:C 最新。
只需在您的 .pro 文件中尝试一下:
CONFIG += c++latest
除了 QMAKE_CXXFLAGS += /std:c++latest
之外,在.pri(.pro(文件中使用 CONFIG -= c++14
,以防止qmake插入其自己的 /std
compile flag。
编辑:仅当先前包含的.pri具有CONFIG -= c++14
(并且您无法从另一个.pri(