當創建新的CLion項目並選擇C++ 17語言標準時,C++ 17代碼將不會編譯。 初始的CMakeLists.txt文件如下:使用CLion,CMake和VS2017編譯器編譯C++ 17
cmake_minimum_required(VERSION 3.8)
project(optional2)
set(CMAKE_CXX_STANDARD 17)
set(SOURCE_FILES main.cpp)
add_executable(optional2 ${SOURCE_FILES})
要編譯的C++ 17代碼我不得不以下行添加到的CMakeLists.txt文件:
add_compile_options(/std:c++latest)
這是該正確的方式(和/或唯一的方法?)在CMAKE/CLion中添加此編譯選項?
正在使用的C++編譯器是運行CLion 2017.2的Windows 10工作站上的帶有nmake.exe的vs2017 cl.exe。
Visual Studio中不支持在實踐C++ 17截至撰寫本文時爲止。另請參閱MSDN上的[Support For C++ 11/14/17 Features(Modern C++)](https://msdn.microsoft.com/en-us/library/hh567368.aspx)。它們並不真的支持C++ 11或C++ 14。我們根據MSDN上宣傳的支持矩陣做了一些更改,並且彙報了錯誤報告和崩潰報告。微軟廣告廢話造成的所有問題都讓我不耐煩。 – jww
[如何在VS2017中使用CMake啓用/ std:C++ 17](https://stackoverflow.com/questions/44960715/how-to-enable-stdc17-in-vs2017-with-cmake) – Florian