std::basic_format_context
格式化函数 | ||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)
|
||||
格式化概念 | ||||
(C++23)
|
||||
格式化器 | ||||
(C++20)
|
||||
(C++23)
|
||||
(C++20)(C++20)(C++20)
|
||||
basic_format_contextformat_contextwformat_context
(C++20)(C++20)(C++20)
|
||||
(C++23)
|
||||
(C++23)
|
||||
格式化参数 | ||||
(C++20)
|
||||
(C++20)
|
||||
(C++20)(C++20)(C++20)
|
||||
(C++20)(C++20)(C++20)
|
||||
(C++20)
(C++26
中弃用)
|
||||
(C++20)(C++20)
|
||||
格式错误 | ||||
(C++20)
|
在标头
<format>
定义
|
||
template<class
OutputIt, class
CharT>
class basic_format_context; |
(1) | (C++20 起) |
using
format_context =
basic_format_context</*
unspecified */,
char>;
|
(2) | (C++20 起) |
using
wformat_context =
basic_format_context</*
unspecified */,
wchar_t>;
|
(3) | (C++20 起) |
提供到由格式化参数和输出迭代器组成的格式化状态的访问。
若 OutputIt
不实现
std::output_iterator<const CharT&>
则行为未定义。
成员类型
类型 | 定义 |
iterator
|
OutputIt
|
char_type
|
CharT
|
成员别名模版
类型 | 定义 |
formatter_type<T>
|
std::formatter<T, CharT> |
成员函数
arg
|
返回位于给定下标的参数 (公开成员函数) |
locale
|
返回用于本地环境特定格式化的本地环境 (公开成员函数) |
out
|
返回指向输出缓冲区的迭代器 (公开成员函数) |
advance_to
|
推进输出迭代器到给定位置 (公开成员函数) |
std::basic_format_context::arg
std::basic_format_arg<basic_format_context>
arg(std::size_t
id)
const;
|
||
返回保有 args
中第 id
元素的
std::basic_format_arg
,其中 args
是参数包或传递给格式化函数的 std::basic_format_args
对象。
若 id
不小于格式化参数的数量,则返回默认构造的
std::basic_format_arg
(保有一个 std::monostate
对象)。
std::basic_format_context::locale
std::locale
locale();
|
||
返回传递给格式化函数的本地环境,或若格式化函数不接收本地环境返回默认构造的 std::locale 。
std::basic_format_context::out
iterator
out();
|
||
返回指向输出缓冲区的迭代器。从存储的迭代器移动构造结果。
std::basic_format_context::advance_to
void
advance_to(iterator
it);
|
||
移动赋值 it
给存储的输出迭代器。调用 advance_to
后,对
out()
的后继调用将返回 it
的副本。
示例
本节未完成 原因:暂无示例 |
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 3567 | C++20 | basic_format_context 无法用于仅移动的迭代器类型
|
使之移动迭代器 |