std:: basic_format_string, std:: format_string, std:: wformat_string
|
定義済みヘッダー
<format>
|
||
|
template
<
class
CharT,
class
...
Args
>
struct basic_format_string ; |
(1) | (C++20以降) |
|
template
<
class
...
Args
>
using
format_string
=
|
(2) | (C++20以降) |
|
template
<
class
...
Args
>
using
wformat_string
=
|
(3) | (C++20以降) |
クラステンプレート
std::basic_format_string
は、フォーマット関数によって使用される
std::basic_string_view
をラップします。
std::basic_format_string
のコンストラクタは、コンパイル時のフォーマット文字列チェックを実行します
コンストラクタ引数が
std::runtime_format
によって返されたものでない限り
(C++26以降)
。
目次 |
メンバー関数
|
(constructor)
|
basic_format_stringを構築する(引数がフォーマット文字列でない場合はコンパイルエラーを発生させる)
(public member function) |
|
get
|
ラップされた文字列を返す
(public member function) |
std::basic_format_string:: basic_format_string
|
template
<
class
T
>
consteval basic_format_string ( const T & s ) ; |
(1) | |
|
basic_format_string
(
/* runtime-format-string */
<
CharT
>
s
)
noexcept
;
|
(2) | (C++26以降) |
basic_format_string
オブジェクトを構築する。引数がコンパイル時定数でない場合、または書式化引数型
Args
に対する書式文字列として解析できない場合、構築は不適格となる。
basic_format_string
オブジェクトを構築します。このオブジェクトは
std::runtime_format
によって返される文字列
s
のビューを格納します。構築時にはフォーマット文字列のチェックは行われません。
パラメータ
| s | - |
フォーマット文字列を表すオブジェクト。フォーマット文字列は以下から構成される:
各置換フィールドは以下の形式を持つ:
1)
フォーマット指定なしの置換フィールド
2)
フォーマット指定ありの置換フィールド
|
||||||||||||||||||||||||||||||||||||||||||||||
std::basic_format_string:: get
|
constexpr
std::
basic_string_view
<
CharT
>
get
(
)
const
noexcept
;
|
||
格納されている文字列ビューを返します。
注記
エイリアステンプレート
format_string
および
wformat_string
は
std::type_identity_t
を使用してテンプレート引数の推論を抑制します。通常、これらが関数パラメータとして現れる場合、それらのテンプレート引数は他の関数引数から推論されます。
template<class... Args> std::string format(std::format_string<Args...> fmt, Args&&... args); auto s = format("{} {}", 1.0, 2); // format<double, int> を呼び出す。Args は 1.0, 2 から推論される // format_string での type_identity_t の使用により、テンプレート引数推論は // フォーマット文字列の型を考慮しない
例
|
このセクションは不完全です
理由: 例がありません |
欠陥報告
以下の動作変更の欠陥報告書は、以前に公開されたC++規格に対して遡及的に適用されました。
| DR | 適用対象 | 公開時の動作 | 正しい動作 |
|---|---|---|---|
| P2508R1 | C++20 | この機能に対するユーザー可視名が存在しない |
名前
basic_format_string
が公開される
|