如何将解决方案文件中的所有项目更改为C ++ 17 MSVC?

时间:2019-05-27 09:49:50

标签: c++ cmake visual-studio-2017

我正在使用VS2017(版本15.9.12),并使用CMake 3.14为VS编译器Visual Studio 15 2017生成了一个解决方案文件。 我想使用一些C ++ 17功能。当我查看项目的属性页时,字段C / C ++->语言-> C ++语言标准为空。在那里,我可以将其更改为/ std:c ++ 17(以及其他一些选项)。

由于代码是外部项目,所以我不想更改CMake文件以添加CXX_Standard 17。

Visual Studio是否为整个项目设置了带有C ++ 17选项的编译器,还是我必须手动为每个子项目更改此设置?

1 个答案:

答案 0 :(得分:1)

好像您必须为每个子项目更改此设置。或者,只需运行cmake -DCMAKE_CXX_STANDARD=17 -S /path/to/external/project -B bld(例如),CMake就会生成具有所需标准的项目(除非被CMakeLists.txt覆盖)。