std::define_static_string
ja.cppreference.net より
| ヘッダ <meta>
|
||
template< ranges::input_range R >
consteval const ranges::range_value_t<R>* define_static_string( R&& r );
|
(C++26 以降) で定義 | |
文字配列を静的ストレージに昇格させます。r が文字列リテラルオブジェクトでない場合、ヌル文字が付加されます。
以下と同等:
return std::meta::extract<const ranges::range_value_t<R>*>(std::meta::reflect_constant_string(r));
引数
| r | - | 一つのinput_range(文字の範囲) |
戻り値
文字配列オブジェクトの最初の要素へのポインタ。そのオブジェクトはテンプレートパラメータオブジェクトであり、rの内容を持ちます。
注釈
テンプレートパラメータオブジェクトとして、結果の文字列オブジェクトは静的記憶域期間を持ちます。同じ内容の文字列は同じオブジェクトに対応します。
結果のテンプレートパラメータオブジェクトは潜在的に非一意なオブジェクトです。
| 機能テストマクロ | 値 | 標準 | 機能 |
|---|---|---|---|
__cpp_lib_define_static |
202506L |
(C++26) | std::define_static_string
|
例
| このセクションは不完全です 理由: 例がありません |
関連項目
(C++26) |
コンパイル時配列を静的ストレージに昇格させ、静的配列の span を返します (関数テンプレート) |
(C++26) |
コンパイル時の値を静的ストレージに昇格させ、静的オブジェクトへのポインタを返します (関数テンプレート) |
(C++26) |
コンパイル時文字列を静的ストレージに昇格させ、静的文字列を表すリフレクションを返します (関数テンプレート) |