Если вы, как и я, думали, что указав компилятору ключ -std:c++20 вы автоматически получите корректное значение __cplusplus, то вы заблуждаетесь :(
Кроме ключа -std:c++20 нужно еще и ключ -Zc:__cplusplus указать. Цинк:
$ cat t.cpp
#include <iostream>
int main() {
std::cout << __cplusplus << std::endl;
}
$ cl -EHsc -nologo -std:c++20 t.cpp
t.cpp
$ ./t.exe
199711
$ cl -EHsc -nologo -std:c++20 -Zc:__cplusplus t.cpp
t.cpp
$ ./t.exe
202002
Рецепт найден здесь.
Что тут остается сказать кроме "Вот уроды!"...
Комментариев нет:
Отправить комментарий