qtcmake C++17特性 所以我在这里编译我的CKED C++项目,就像XPUNTU 16.04中的GCC-7.2.0没有通过PPA < /P>

qtcmake C++17特性 所以我在这里编译我的CKED C++项目,就像XPUNTU 16.04中的GCC-7.2.0没有通过PPA < /P>,c++,qt,cmake,qt-creator,c++17,C++,Qt,Cmake,Qt Creator,C++17,一切正常,新特性为我的代码库增加了相当大的价值 但是,尝试使用相同的编译器在qtcreator中编译相同的项目会产生如下错误 如果试图编译初始值设定项ifs。我试图在qtCreators选项的构建和运行部分手动选择gcc-7,但没有成功。所以我的问题是: 要使IDE符合此最新标准,我必须在IDE中进行哪些调整?如果您在Qt creator中编译Cmake项目,请确保在CMakeLists.txt中有这样一行: set(CMAKE_CXX_STANDARD 17) 要使用gcc-7.2.0,请确

一切正常,新特性为我的代码库增加了相当大的价值

但是,尝试使用相同的编译器在qtcreator中编译相同的项目会产生如下错误

如果试图编译初始值设定项ifs。我试图在qtCreators选项的构建和运行部分手动选择gcc-7,但没有成功。所以我的问题是:


要使IDE符合此最新标准,我必须在IDE中进行哪些调整?

如果您在Qt creator中编译Cmake项目,请确保在CMakeLists.txt中有这样一行:

set(CMAKE_CXX_STANDARD 17)
要使用gcc-7.2.0,请确保它列在“工具/选项”的“生成和运行”部分的“编译器”选项卡中。然后,在“工具包”选项卡中,选择配置项目时使用的工具包,并选择gcc-7.2.0作为工具包的编译器

如果您使用的是qmake,请将此行添加到pro文件中:


这在某种程度上起了作用,我现在能够编译C++17功能了。然而,由于某些原因,IDE现在正在用详细的错误标记一堆代码行。另外,我想知道在我的CMAKISTISS.TXT中定义C++版本或编译器版本的情况下,在SUDO更新选项中选择编译器版本的情况下优先于什么?
set(CMAKE_CXX_STANDARD 17)
QMAKE_CXXFLAGS += -std=c++17