名前空間
変種
操作

std::pair

提供: cppreference.com
< cpp‎ | utility
 
 
 
 
ヘッダ <utility> で定義
template<

    class T1,
    class T2

> struct pair;

std::pair は2つの異なる型を持つオブジェクトを1つの単位として格納する方法を提供する構造体テンプレートです。 pair は2要素の std::tuple の特別なケースです。

std::is_trivially_destructible_v<T1> && std::is_trivially_destructible_v<T2>true であれば、 pair のデストラクタもトリビアルです。

(C++17およびそれ以降)

目次

[編集] テンプレート引数

T1, T2 - pair が格納する要素の型

[編集] メンバ型

メンバ型 定義
first_type T1
second_type T2

[編集] メンバオブジェクト

メンバ名
first T1
second T2

[編集] メンバ関数

新しいペアを構築します
(パブリックメンバ関数)
内容を代入します
(パブリックメンバ関数)
(C++11)
内容を交換します
(パブリックメンバ関数)

[編集] 非メンバ関数

引数の型によって定義された型の pair オブジェクトを作成します
(関数テンプレート) [edit]
ペア内の値を辞書的に比較します
(関数テンプレート) [edit]
std::swap アルゴリズムの特殊化
(関数テンプレート) [edit]
pair の要素にアクセスします
(関数テンプレート) [edit]

[編集] ヘルパークラス

pair のサイズを取得します
(クラステンプレートの特殊化) [edit]
pair の要素の型を取得します
(クラステンプレートの特殊化) [edit]

[編集] 推定ガイド(C++17およびそれ以降)

[編集] 関連項目

(C++11)
異なる型の混在できる複数の要素を格納する固定サイズのコンテナを実装します
(クラステンプレート) [edit]
左辺値参照の tuple を作成したり、タプルを個々のオブジェクトに分解したりします
(関数テンプレート) [edit]