📅  最后修改于: 2023-12-03 14:39:51.454000             🧑  作者: Mango
Multiset是C++ STL中的一个容器,它类似于set,但可以存储多个相同的元素。swap函数是Multiset类中的一个成员函数,用于将两个Multiset对象的内容进行交换。
void swap(multiset& other);
其中,other
代表另一个Multiset对象。
#include <iostream>
#include <set>
using namespace std;
int main()
{
// 创建两个Multiset对象
multiset<int> set1 = {1, 2, 3};
multiset<int> set2 = {4, 5, 6};
cout << "交换前:" << endl;
cout << "set1: ";
for (auto it = set1.begin(); it != set1.end(); it++)
{
cout << *it << " ";
}
cout << endl;
cout << "set2: ";
for (auto it = set2.begin(); it != set2.end(); it++)
{
cout << *it << " ";
}
cout << endl;
// 交换两个Multiset对象的内容
set1.swap(set2);
cout << "交换后:" << endl;
cout << "set1: ";
for (auto it = set1.begin(); it != set1.end(); it++)
{
cout << *it << " ";
}
cout << endl;
cout << "set2: ";
for (auto it = set2.begin(); it != set2.end(); it++)
{
cout << *it << " ";
}
cout << endl;
return 0;
}
输出结果如下:
交换前:
set1: 1 2 3
set2: 4 5 6
交换后:
set1: 4 5 6
set2: 1 2 3
从输出结果可以看出,两个Multiset对象的内容已被成功交换。