не работает или не показывает выбранную версию 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.

→ Ссылка