C++ STL中的multimap swap()函数
multimap::swap() 是C++ STL中的内置函数,用于交换两个multimap容器。调用swap()函数后,multimap1中的内容在multimap2中,multimap2中的内容在multimap1中。
语法:
mulitmap1_name.swap(multimap2_name)
参数: 该函数接受一个参数,与multimap1_name交换。
返回值: 该函数没有返回值。
// C++函数示例
// multimap::swap()函数
#include <bits/stdc++.h>
using namespace std;
int main()
{
// 初始化容器
multimap<int, int> mp1, mp2;
// 随机插入元素
mp1.insert({2,30});
mp1.insert({1,40});
mp2.insert({ 10,60 });
mp2.insert({ 9,20 });
cout << "\n在应用swap()之前,multimap1是:\n";
cout << "KEY\tELEMENT\n";
for (auto itr = mp1.begin(); itr != mp1.end(); ++itr) {
cout << itr->first
<< '\t' << itr->second << '\n';
}
cout << "\n在应用swap()之前,multimap2是:\n";
cout << "KEY\tELEMENT\n";
for (auto itr = mp2.begin(); itr != mp2.end(); ++itr) {
cout << itr->first
<< '\t' << itr->second << '\n';
}
// 执行两个multimap的交换操作
mp1.swap(mp2);
cout << "\n在应用swap()之后,multimap1是:\n";
cout << "KEY\tELEMENT\n";
for (auto itr = mp1.begin(); itr != mp1.end(); ++itr) {
cout << itr->first
<< '\t' << itr->second << '\n';
}
cout << "\n在应用swap()之后,multimap2是:\n";
cout << "KEY\tELEMENT\n";
for (auto itr = mp2.begin(); itr != mp2.end(); ++itr) {
cout << itr->first
<< '\t' << itr->second << '\n';
}
return 0;
}