std:: basic_format_context
|
定義済みヘッダー
<format>
|
||
|
template
<
class
OutputIt,
class
CharT
>
class basic_format_context ; |
(1) | (C++20以降) |
|
using
format_context
=
basic_format_context
<
/* 未規定 */
,
char
>
;
|
(2) | (C++20以降) |
|
using
wformat_context
=
basic_format_context
<
/* 未規定 */
,
wchar_t
>
;
|
(3) | (C++20以降) |
書式設定引数と出力イテレータからなる書式設定状態へのアクセスを提供します。
OutputIt
が
std::
output_iterator
<
const
CharT
&
>
をモデルとしない場合、動作は未定義です。
std::basic_format_context
の明示的特殊化または部分特殊化を宣言するプログラムは、診断なしに不適格である。
std::basic_format_context
オブジェクトは実装によってのみ作成できます。ユーザーコードは
std::formatter
特殊化の
format
関数を通じてのみフォーマットコンテキストを変更することが許可されています。
目次 |
メンバー型
| 型 | 定義 |
iterator
|
OutputIt
|
char_type
|
CharT
|
メンバーエイリアステンプレート
| 型 | 定義 |
| formatter_type < T > | std:: formatter < T, CharT > |
メンバー関数
|
(constructor)
[deleted]
|
basic_format_context
はユーザーコードで構築できません
(public member function) |
|
operator=
[deleted]
|
basic_format_context
は代入できません
(public member function) |
|
arg
|
指定されたインデックスの引数を返します
(public member function) |
|
locale
|
ロケール固有のフォーマットに使用されるロケールを返します
(public member function) |
|
out
|
出力バッファへのイテレータを返します
(public member function) |
|
advance_to
|
出力イテレータを指定された位置まで進めます
(public member function) |
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++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 修正後の動作 |
|---|---|---|---|
| LWG 3567 | C++20 |
basic_format_context
はmove-onlyイテレータ型で動作しなかった
|
イテレータをmoveするように変更 |
| LWG 3975 | C++20 |
basic_format_context
のユーザー特殊化が許可されていた
|
許可しないように変更 |
| LWG 4061 | C++20 |
basic_format_context
がユーザーコードによる構築と代入を許可していた
|
構築も代入もできないように変更 |