C++学習のPair
1827 ワード
C++学習のPair
Pairタイプの概要
pairはテンプレートタイプで、2つのデータ値が含まれています.2つのデータのタイプは異なります.基本的な定義は次のとおりです.
pair a;
aには2つのタイプがあり、1つ目の要素はint型で、2つ目の要素はstring型であり、pairを作成するときに初期化されていない場合は、デフォルトのコンストラクション関数を呼び出して初期化します.
pair a("James", "Joy");
上記のように定義したときに直接初期化することもできます.
pairタイプの使用は煩雑であるため、同じpairタイプを複数定義する場合はtypedefが宣言を簡略化することができます.
typedef pair author;
author pro("May", "Lily");
author joye("James", "Joyce");
Pairオブジェクトの操作
pairクラスの場合、firstとsecondという2つの要素しかないため、通常のポイントオペレータを直接使用してメンバーにアクセスできます.
pair a("Lily", "Poly");
string name;
name = pair.second;新しいpairオブジェクト を生成する
make_を使用できますpairは既存の2つのデータに対して新しいpairタイプを構築します.
int a = 8;
string m = "James";
pair newone;
newone = make_pair(a, m);
C++pair(対グループ)の使い方
クラステンプレート:template struct pair
パラメータ:T 1は1番目の値のデータ型であり、T 2は2番目の値のデータ型である.
機能:pairは、pairの2つの公有関数firstおよびsecondでそれぞれアクセスできる異なるデータ型(T 1およびT 2)を有する一対の値を1つの値に結合します.
具体的な使い方:
1.定義(構築):
2.2つの要素(firstとsecondを介して):
出力結果:1 2.5
3.割り当てoperator=:
(1)利用make_pair:
(2)変数間付与:
Pairタイプの概要
pairはテンプレートタイプで、2つのデータ値が含まれています.2つのデータのタイプは異なります.基本的な定義は次のとおりです.
pair a;
aには2つのタイプがあり、1つ目の要素はint型で、2つ目の要素はstring型であり、pairを作成するときに初期化されていない場合は、デフォルトのコンストラクション関数を呼び出して初期化します.
pair a("James", "Joy");
上記のように定義したときに直接初期化することもできます.
pairタイプの使用は煩雑であるため、同じpairタイプを複数定義する場合はtypedefが宣言を簡略化することができます.
typedef pair author;
author pro("May", "Lily");
author joye("James", "Joyce");
Pairオブジェクトの操作
pairクラスの場合、firstとsecondという2つの要素しかないため、通常のポイントオペレータを直接使用してメンバーにアクセスできます.
pair a("Lily", "Poly");
string name;
name = pair.second;
make_を使用できますpairは既存の2つのデータに対して新しいpairタイプを構築します.
int a = 8;
string m = "James";
pair newone;
newone = make_pair(a, m);
C++pair(対グループ)の使い方
クラステンプレート:template struct pair
パラメータ:T 1は1番目の値のデータ型であり、T 2は2番目の値のデータ型である.
機能:pairは、pairの2つの公有関数firstおよびsecondでそれぞれアクセスできる異なるデータ型(T 1およびT 2)を有する一対の値を1つの値に結合します.
具体的な使い方:
1.定義(構築):
1 pair p1; //
2 pair p2(1, 2.4); //
3 pair p3(p2); //
2.2つの要素(firstとsecondを介して):
1 pair p1; //
2 p1.first = 1;
3 p1.second = 2.5;
4 cout << p1.first << ' ' << p1.second << endl;
出力結果:1 2.5
3.割り当てoperator=:
(1)利用make_pair:
1 pair p1;
2 p1 = make_pair(1, 1.2);
(2)変数間付与:
pair p1(1, 1.2);
pair p2 = p1;