命名空间
变体
操作

std::formatter<std::stack>

来自 cppreference.com
< cpp‎ | container‎ | stack
定义在头文件 <stack>
template< class CharT, class T, std::formattable<CharT> Container, class... U >
struct formatter<std::stack<T, Container, U...>, CharT>;
(自 C++23 起)

针对容器适配器类型 std::stackstd::formatter 模板特化允许用户使用 格式化函数 将底层容器转换为其文本表示形式,表示为元素集合。

如果 std::formattable<Container, CharT>true,则启用特化。

内容

[编辑] 成员类型

名称 定义
maybe-const-container fmt-maybe-const <Container, CharT>
(仅用于说明目的的成员类型*)
maybe-const-adaptor maybe-const <
    std::is_const_v<maybe-const-container>,
    std::stack<T, Container, U...>>

(仅用于说明目的的成员类型*)

[编辑] 数据成员

名称 定义
underlying_ 类型为 std::formatter<ranges::ref_view<maybe-const-container>, CharT> 的底层格式化程序
(仅用于说明目的的成员对象*)

[编辑] 成员函数

parse
解析由 range-format-spec 指定的格式说明符
(公共成员函数)
format
写入由 range-format-spec 指定的范围格式化输出
(公共成员函数)

std::formatter<std::stack>::parse

template< class ParseContext >
constexpr auto parse( ParseContext& ctx ) -> ParseContext::iterator;

等效于 return underlying_ .parse(ctx);.

返回值

一个指向底层容器 range-format-spec 结尾的迭代器。

std::formatter<std::stack>::format

template< class FormatContext >

auto format( /*maybe-const-adaptor*/& r, FormatContext& ctx ) const

    -> FormatContext::iterator;

等效于 return underlying_ .format(r.c, ctx);.

返回值

一个指向输出范围结尾的迭代器。

[编辑] 示例

[编辑] 另请参见

(C++20)
为给定类型定义格式化规则
(类模板) [编辑]
帮助实现 std::formatter 针对范围类型的特化的类模板
(类模板) [编辑]