最終更新日時:
が更新

履歴 編集

<utility>

utility

<utility>ヘッダでは、その他のライブラリの至る所で使用される、幾つかの基本的な関数やクラステンプレートを定義する。

演算子定義

名前 説明 対応バージョン
rel_ops 関係演算子(namespace)

値の入れ替え

名前 説明 対応バージョン
swap 二つのオブジェクトの値を交換する(function template) C++11
exchange 値を書き換え、書き換え前の値を返す(function template) C++14

転送と移動

名前 説明 対応バージョン
forward 関数テンプレートの引数を転送する(function template) C++11
move 左辺値を右辺値にキャストする(function template) C++11
move_if_noexcept 例外を投げないオブジェクトをムーブする(function template) C++11

型の値

名前 説明 対応バージョン
declval 指定された型の値を得る(function template) C++11
as_const 左辺値参照をconst左辺値参照にする C++17

名前 説明 対応バージョン
pair 異なる型の二つの値の組(class template)
make_pair pairを構築するヘルパ関数(function template)
piecewise_construct_t pairtupleの要素型のコンストラクタ引数を直接受け取って構築するためのタグ型(class) C++11
piecewise_construct pairtupleの要素型のコンストラクタ引数を直接受け取って構築するためのタグ値(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

コンパイル時の整数シーケンス

名前 説明 対応バージョン
integer_sequence 任意の整数型のシーケンス(class template) C++14
make_integer_sequence 要素数を指定して、0から始まる整数シーケンスを生成する(type-alias) C++14
index_sequence size_t型の整数シーケンス(class template) C++14
make_index_sequence 要素数を指定して、0から始まるsize_t型整数シーケンスを生成する(type-alias) C++14
index_sequence_for 型のシーケンスを、0から始まるsize_t型整数シーケンスに変換する(type-alias) C++14