我正在使用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选项的编译器,还是我必须手动为每个子项目更改此设置?
答案 0 :(得分:1)
好像您必须为每个子项目更改此设置。或者,只需运行cmake -DCMAKE_CXX_STANDARD=17 -S /path/to/external/project -B bld
(例如),CMake就会生成具有所需标准的项目(除非被CMakeLists.txt覆盖)。