std::formatter<range>
定義於標頭檔案 <format> |
||
template< ranges::input_range R, class CharT > requires (std::format_kind<R> != std::range_format::disabled) && |
(C++23 起) | |
幫助模板 |
||
template< std::range_format K, ranges::input_range R, class CharT > struct /*range-default-formatter*/; |
(僅作說明*) | |
std::formatter 對範圍型別的模板特化允許使用者使用 格式化函式 將範圍轉換為其文字表示形式,作為元素集合或字串。
此特化派生自 range-default-formatter
<std::format_kind<R>, R, CharT>。
當 R
滿足 input_range
,且 std::format_kind<R> 不是 std::range_format::disabled,並且 std::formattable<ranges::range_reference_t<R>, CharT> 為 true 時,此特化啟用。
如果 const R 滿足 input_range
且 ranges::range_reference_t<const R> 滿足 std::formattable<CharT>,則此特化滿足 Formatter 的要求。它總是滿足 BasicFormatter 的要求。
目錄 |
[編輯] 格式規範
range-format-spec 的語法是
range-fill-and-align (可選) width (可選) n (可選) range-type (可選) range-underlying-spec (可選) |
|||||||||
該語法在 範圍格式規範 中有完整描述。
對於 std::format_kind<R> 為 std::range_format::string 或 std::range_format::debug_string 的 std::formatter
特化,format-spec 是 std-format-spec 而不是 range-format-spec(其使用 std::formatter<std::basic_string<CharT>, CharT> 作為底層格式化器)。
[編輯] range-default-formatter
的特化
序列形式範圍的格式化工具 (類模板特化) | |
對映形式範圍的格式化工具 (類模板特化) | |
集合形式範圍的格式化工具 (類模板特化) | |
字串或跳脫字元串形式範圍的格式化工具 (類模板特化) |
[編輯] 示例
本節不完整 原因:示例 |
[編輯] 參閱
(C++20) |
定義給定型別的格式化規則 (類模板) |
(C++23) |
有助於實現範圍型別的 std::formatter 特化的類模板 (類模板) |