utility
<utility>
ヘッダでは、その他のライブラリの至る所で使用される、幾つかの基本的な関数やクラステンプレートを定義する。
このヘッダでは、以下の標準ヘッダをインクルードする:
演算子定義
名前 |
説明 |
対応バージョン |
rel_ops |
関係演算子(namespace) |
C++20から非推奨 |
値の入れ替え
名前 |
説明 |
対応バージョン |
swap |
二つのオブジェクトの値を交換する(function template) |
C++11 |
exchange |
値を書き換え、書き換え前の値を返す(function template) |
C++14 |
転送と移動
名前 |
説明 |
対応バージョン |
forward |
関数テンプレートの引数を転送する(function template) |
C++11 |
forward_like |
第一テンプレート引数のconst 性と参照修飾で引数を転送する(function template) |
C++23 |
move |
左辺値を右辺値にキャストする(function template) |
C++11 |
move_if_noexcept |
例外を投げないオブジェクトをムーブする(function template) |
C++11 |
型の修飾
名前 |
説明 |
対応バージョン |
as_const |
左辺値参照をconst 左辺値参照にする (function template) |
C++17 |
型の値
名前 |
説明 |
対応バージョン |
declval |
指定された型の値を得る(function template) |
C++11 |
整数比較
列挙型
名前 |
説明 |
対応バージョン |
to_underlying |
列挙値を基底型に変換する (function template) |
C++23 |
到達しない表明
名前 |
説明 |
対応バージョン |
unreachable |
コードパス不到達を表明する (function) |
C++23 |
組
名前 |
説明 |
対応バージョン |
pair |
異なる型の二つの値の組(class template) |
|
make_pair |
pair を構築するヘルパ関数(function template) |
|
piecewise_construct_t |
pair やtuple の要素型のコンストラクタ引数を直接受け取って構築するためのタグ型(class) |
C++11 |
piecewise_construct |
pair やtuple の要素型のコンストラクタ引数を直接受け取って構築するためのタグ値(constant variable) |
C++11 |
tuple |
tuple 型の先行宣言(class template) |
C++11 |
直接構築
名前 |
説明 |
対応バージョン |
in_place_t |
要素型のコンストラクタ引数を直接受け取って構築するためのタグ型 (class) |
C++17 |
in_place |
要素型のコンストラクタ引数を直接受け取って構築するためのタグ値 (constant variable) |
C++17 |
in_place_type_t |
指定した要素型のコンストラクタ引数を直接受け取って構築するためのタグ型 (class) |
C++17 |
in_place_type |
指定した要素型のコンストラクタ引数を直接受け取って構築するためのタグ値 (constant variable) |
C++17 |
in_place_index_t |
指定位置にある要素型のコンストラクタ引数を直接受け取って構築するためのタグ型 (class) |
C++17 |
in_place_index |
指定位置にある要素型のコンストラクタ引数を直接受け取って構築するためのタグ値 (constant variable) |
C++17 |
非型引数
名前 |
説明 |
対応バージョン |
nontype_t |
非型引数を表現するためのタグ型 (class template) |
C++26 |
nontype |
非型引数を表現するためのタグ値 (variable template) |
C++26 |
コンパイル時の整数シーケンス
参照