如何使用<格式>标题

2022-01-12 00:00:00 formatting g++ c++ header-files c++20

在相关问题中(std::string 格式如 sprintf") 我了解了这个很棒的新 C++20 头文件 <format>.

但是,似乎没有支持的编译器.这是正确的还是有办法使用它?
我正在使用带有 -std=c++2a 标志的 g++ 9.3,并且无法识别库 <format>.

However, there seems to be no supporting compiler. Is this correct or is there a way to use it anyway?
I'm using g++ 9.3 with the -std=c++2a flag and the library <format> is not recognised.

#include <format> // fatal error: format: No such file or directory
#include <iostream>

int main(){
    std::cout << std::format("Hello {}!", "World");
}

g++-9 test.cpp -o test -std=c++2a

推荐答案

使用libfmt.<format> 标头本质上是一个标准化的 libfmt(如果我没记错的话,删除了一些小功能).

Use libfmt. The <format> header is essentially a standardized libfmt (with a few small features removed, if I remember correctly).

相关文章