名前空間
変種
操作

std::vformat_to

提供: cppreference.com
< cpp‎ | utility‎ | format
 
 
ユーティリティライブラリ
汎用ユーティリティ
日付と時間
関数オブジェクト
書式化ライブラリ(C++20)
(C++11)
関係演算子 (C++20で非推奨)
整数比較関数
(C++20)
スワップと型操作
(C++14)
(C++11)
(C++11)
(C++11)
(C++17)
一般的な語彙の型
(C++11)
(C++17)
(C++17)
(C++17)
(C++17)

初等文字列変換
(C++17)
(C++17)
 
書式化ライブラリ
書式化関数
(C++20)
(C++20)
(C++20)
vformat_to
(C++20)
フォーマッタ
(C++20)
書式化引数
書式化エラー
 
ヘッダ <format> で定義
template<class OutputIt>

OutputIt vformat_to(OutputIt out,

                    std::string_view fmt, std::format_args_t<OutputIt, char> args);
(1) (C++20以上)
template<class OutputIt, class... Args>

OutputIt vformat_to(OutputIt out,

                    std::wstring_view fmt, std::format_args_t<OutputIt, wchar_t> args);
(2) (C++20以上)
template<class OutputIt, class... Args>

OutputIt vformat_to(OutputIt out, conststd::locale& loc,

                    std::string_view fmt, std::format_args_t<OutputIt, char> args);
(3) (C++20以上)
template<class OutputIt, class... Args>

OutputIt vformat_to(OutputIt out, conststd::locale& loc,

                    std::wstring_view fmt, std::format_args_t<OutputIt, wchar_t> args);
(4) (C++20以上)

書式文字列 fmt に従って args によって保持されている引数を書式化し、その結果を出力イテレータ out に出力します。 存在する場合はロケール固有の書式化のために loc が使用されます。

CharTdecltype(fmt)::char_type (オーバーロード (1,3) の場合は char、オーバーロード (2,4) の場合は wchar_t) とします。

これらのオーバーロードは、 OutputIt がコンセプト std::output_iterator<const CharT&> を満たす 場合にのみ、オーバーロード解決に参加します。 OutputIt がコンセプト std::output_iterator<const CharT&> をモデル化しない (意味論の要件を満たさない) 場合、または std::formatter<Ti, CharT> が引数の型 Ti のいずれかについて Formatter の要件を満たさない場合、動作は未定義です。

目次

[編集]引数

out - 出力バッファを指すイテレータ。
fmt - 書式文字列を表す文字列ビュー。

書式文字列は以下から構成されます。

  • 普通の文字 ({ および } を除きます)。 そのまま出力にコピーされます。
  • エスケープシーケンス {{ および }}。 出力中ではそれぞれ { および } に置き換えられます。
  • 置換フィールド。

置換フィールドは以下の形式を持ちます。

  • 最初の { 文字。
  • (オプション)arg-id。 非負の数値。
  • (オプション) コロン (:) とそれに続く書式指定。
  • 最後の } 文字。

arg-id は書式化に使用する値を持つ args 内の引数のインデックスを指定します。 arg-id が省略された場合は、順番に引数が使用されます。 書式文字列中の arg-id は、すべて存在するか、すべて省略するかでなければなりません。 手動インデックスと自動インデックスの混合はエラーです。

書式指定は対応する引数のための std::formatter の特殊化によって定義されます。

  • 基本型および標準の文字列型の場合、書式指定は標準の書式指定の通りに解釈されます。
  • chrono 型の場合、書式指定は chrono の書式指定の通りに解釈されます。
  • その他の書式化可能な型の場合、書式指定はユーザ定義の formatter の特殊化によって決定されます。


args - 書式化する引数。
loc - ロケール固有の書式化のために使用される std::locale

[編集]戻り値

出力範囲の終端を指すイテレータ。

[編集]例外

fmt が有効な書式文字列でない場合 std::format_error を投げます。 いずれかのフォーマッタによって投げられる例外も伝播されます。

[編集]

[編集]関連項目

close