在 CppCon 2022 上宣布,C++ 语言的新官方 HelloWorld 现已发布:
#include <print>
int main() {
std::print("Hello world\n");
return 0;
}
你知道 std::print 在 GCC 中可用吗?也许它需要一些标志或额外的库来激活?
C++ 功能的状态通过其功能测试宏进行跟踪。 cppreference.com 列出了这些内容,很有帮助。对于
__cpp_lib_print
和 __cpp_lib_format
,它们分别是 print
和 format
。
然后您可以在GCC 中的 C++ 标准支持和libstdc++ 的实现状态中搜索这些宏。现在您会发现没有提及
__cpp_lib_print
,而 __cpp_lib_format
已列出但尚未实施。所以答案是否定的。
您可以使用 C++ 的功能测试工具检查您自己的编译器。像 godbolt.org 这样的在线编译器是测试大多数主流编译器的快速方法。
否,这里是 GCC 和其他编译器的 C++23 功能可用性列表。