std::make_pairと大括号{}の違いを、C++でペアを割り当てる際に示す
「make_pair」は、std::pair型のオブジェクトを作成する関数テンプレートです。引数を2つ必要とし、std::pairオブジェクトを返します。最初の引数がpairオブジェクトの第1要素、2番目の引数がpairオブジェクトの第2要素となります。
中括弧{}は初期化リストの構文であり、std::pairなどの各種オブジェクトを作成し初期化するために使用できます。中括弧の初期化リストを使用すると、pairオブジェクトの初期値を直接指定できます。
C++でペアオブジェクトを割り当てる2つの方法の例を次に示します。
make_pair関数を使って:
std::pair<int, std::string> myPair = std::make_pair(10, "hello");
大括弧で初期化リストを使用する:
std::pair<int, std::string> myPair = {10, "hello"};
大かっこで初期化リストを利用する方法の方が簡潔かつ直感的に、同等の値を持つpairオブジェクトを生成できる。