/Zc:__cplusplus 編譯器選項啓用 __cplusplus 預處理器宏以針對最新的 C++ 語言標準支持報告更新的值。 默認情況下,Visual Studio 始終爲 __cplusplus 預處理器宏返回值“199711L”。
從 Visual Studio 2017 版本 15.7 開始便已提供 /Zc:__cplusplus 選項,該選項在默認情況下處於禁用狀態。
如果啓用 /Zc:__cplusplus,則 __cplusplus == _MSVC_LANG。
CMake中啓用:
if (MSVC_VERSION GREATER_EQUAL "1914")
add_compile_options("/Zc:__cplusplus")
endif()