не работает или не показывает выбранную версию c++ 20
У Visual Studio 2022 (17.13.2) поменял версию с++ с 14 на 20. При этом при перепроверке выводит 199711, если я правильно понимаю, то когда выбрана 20 версия, должно выводить 202002L. вот мои настройки:
Ответы (2 шт):
Автор решения: Harry
→ Ссылка
MSVC по умолчанию не обновляет значение __cplusplus, чтобы сохранить совместимость со старыми кодовыми базами.
Попробуйте при компиляции флаг /Zc:__cplusplus и посмотрите, что получится.
Автор решения: HolyBlackCat
→ Ссылка
Чтобы не зависеть от флажков MSVC, делаем так:
#ifdef _MSC_VER
#define CXX_VERSION _MSVC_LANG
#else
#define CXX_VERSION __cplusplus
#endif
А потом используем CXX_VERSION вместо __cplusplus.
