我想运行这个需要C++23的hello world程序
import std;
int main()
{
std::cout << "Hello, World!\n";
}
我使用的是 Mac,我在终端中输入:
g++-13 -std=c++2b hello_world.cpp -o hello
还尝试过 -std=c++23
但是它给出了错误:C++20“导入”仅适用于“-fmodules-ts”,尚未通过“-std=c++20”启用
为什么还在C++20上?
您需要使用它指定的开关。
并不是它试图使用C++20,而是它没有得到完全支持。
您可以在此处查看状态:https://gcc.gnu.org/projects/cxx-status.html#cxx20其中注明“(需要-fmodules-ts)”
但是,还要注意 g++ 尚不支持标准库的模块。请在此处查看状态:https://en.cppreference.com/w/cpp/compiler_support#cpp23