格式化库 (C++20)
文本格式化库提供 printf 函数族的安全且可扩展的替用品。有意使之补充既存的 C++ I/O 流库并复用其基础设施,例如对用户定义类型重载的流插入运算符。
示例:
std::string message = std::format("The answer is {}.", 42);
格式化函数
(C++20) |
在新 string 中存储参数的格式化表示 (函数模板) |
(C++20) |
通过输出迭代器写其参数的格式化表示 (函数模板) |
(C++20) |
通过输出迭代器写其参数的格式化表示,不超出指定的大小 (函数模板) |
(C++20) |
确定存储其参数的格式化表示所需的字符数 (函数模板) |
扩展性支持与实现细节
(C++20) |
std::format 的使用类型擦除的参数表示的非模板变体 (函数) |
(C++20) |
std::format_to 的使用类型擦除的参数表示的非模板变体 (函数模板) |
(C++20) |
提供对用户定义格式化器的格式化参数的访问的类模板 (类模板) |
(C++20) |
定义给定类型的格式化规则的类模板 (类模板) |
(C++20)(C++20)(C++20) |
格式化字符串分析器状态 (类模板) |
(C++20)(C++20)(C++20) |
格式化状态,包括所有格式化参数和输出迭代器 (类模板) |
(C++20) |
用户定义格式化器的参数观览接口 (函数模板) |
(C++20)(C++20) |
创建引用所有格式化参数的类型擦除对象,可转换到 format_args (函数模板) |
(C++20)(C++20)(C++20)(C++20) |
提供对所有格式化参数的访问的类 (类模板) |
(C++20) |
格式化错误时抛出的异常类型 (类) |