C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C ++ STLのマルチマップswap()関数


この記事では、C ++ STLでのマルチマップswap()関数の動作、構文、および例について説明します。

C ++ STLのマルチマップとは何ですか?

マルチマップは、マップコンテナに似た連想コンテナです。また、Key-Valueとマップされた値の組み合わせによって形成された要素を特定の順序で格納することも容易になります。マルチマップコンテナには、同じキーに関連付けられた複数の要素が存在する可能性があります。データは、関連するキーを使用して内部的に常に並べ替えられます。

マルチマップswap()とは何ですか?

multimap ::swap()関数は、C ++ STLに組み込まれている関数であり、 ヘッダーファイルで定義されています。 swap()は、2つのマルチマップコンテナのコンテンツを交換するために使用されます。この関数は、両方のマルチマップコンテナのサイズに関係なく、2つのマルチマップコンテナの値を交換します。

この関数が呼び出されると、別のマルチマップコンテナーであるパラメーターを受け取り、その内容を関連するコンテナーと交換します。

構文

multimap_name.swap(multimap& multimap_name2);

パラメータ

この関数は、次のパラメーターを受け入れます-

  • map_name2 −これは、関連するマルチマップコンテナとデータを交換する別のマルチマップコンテナのオブジェクトです。

戻り値

この関数は何も返しません。

入力

std::multimap<char, int> odd, eve;
odd.insert(make_pair(‘a’, 1));
odd.insert(make_pair(‘b’, 3));
odd.insert(make_pair(‘c’, 5));
eve.insert(make_pair(‘d’, 2));
eve.insert(make_pair(‘e’, 4));
eve.insert(make_pair(‘f’, 6));
odd.swap(eve);

出力

Odd: d: 2 e:4 f:6
Eve: a:1 b:3 c:5

#include<iostream>
#include<map>
using namespace std;
int main(){
   multimap<int,int > mul_1;
   multimap<int,int> mul_2;
   //declaring iterator to traverse the elements
   multimap<int,int>:: iterator i;
   //inserting elements to multimap1
   mul_1.insert({1,10});
   mul_1.insert({2,20});
   mul_1.insert({3,30});
   mul_1.insert({4,40});
   mul_1.insert({5,50});
   //inserting elements to multimap2
   mul_2.insert({6,60});
   mul_2.insert({7,70});
   mul_2.insert({8,80});
   mul_2.insert({9,90});
   //calling swap to swap the elements
   mul_1.swap(mul_2);
   //elements of multimap1
   cout<<"Elements in multimap1 are: "<<"\n";
   for( i = mul_1.begin(); i!= mul_1.end(); i++){
      cout<<(*i).first<<" "<< (*i).second << "\n";
   }
   //elements of multimap2
      cout<<"\nElements in multimap2 are: ";
   for( i = mul_2.begin(); i!= mul_2.end(); i++){
      cout<<(*i).first<<" "<<(*i).second << "\n";
   }
}

出力

上記のコードを実行すると、次の出力が生成されます-

Elements in multimap1 are:
6 60
7 70
8 80
9 90
Elements in multimap2 are: 1 10
2 20
3 30
4 40
5 50

  1. C ++ STLのマルチセットinsert()関数

    C ++ STLのマルチセットinsert()関数は、マルチセットコンテナ内の要素を、あるマルチセットから別のマルチセットのある位置から別の位置に挿入します。 使用されている関数のリスト: ms.size()=マルチセットのサイズを返します。 ms.insert()=マルチセットに要素を挿入するために使用されます。 サンプルコード #include <iostream> #include <set> #include <string> #include <cstdlib> using namespace std; int main()

  2. C ++のswap()関数

    swap()関数は、2つの数値を交換するために使用されます。この関数を使用すると、2つの数値を交換するために3番目の変数は必要ありません。 C ++言語でのswap()の構文は次のとおりです。 void swap(int variable_name1, int variable_name2); 変数に値を割り当てるか、ユーザー定義の値を渡すと、変数の値が交換されますが、変数の値は実際の場所では同じままです。 これがC++言語でのswap()の例です 例 #include <bits/stdc++.h> using namespace std; int main() { &nb