📅  最后修改于: 2023-12-03 15:13:56.122000             🧑  作者: Mango
在C++ STL set中,swap()函数是用于将两个set对象互换内容的函数。swap()函数非常方便,可以用于调整存储集合的内存,或者用于交换数据以便进行排序或搜索。
void swap(set& other);
参数是另一个set对象的引用,表示要与当前set对象交换内容。
无返回值。
#include <iostream>
#include <set>
int main() {
std::set<int> a = {1, 2, 3};
std::set<int> b = {4, 5, 6};
std::cout << "Set a: ";
for (int x : a) {
std::cout << x << " ";
}
std::cout << std::endl;
std::cout << "Set b: ";
for (int x : b) {
std::cout << x << " ";
}
std::cout << std::endl;
a.swap(b);
std::cout << "Swapped Set a: ";
for (int x : a) {
std::cout << x << " ";
}
std::cout << std::endl;
std::cout << "Swapped Set b: ";
for (int x : b) {
std::cout << x << " ";
}
std::cout << std::endl;
return 0;
}
输出:
Set a: 1 2 3
Set b: 4 5 6
Swapped Set a: 4 5 6
Swapped Set b: 1 2 3
在这个例子中,我们创建了两个set对象a和b,然后交换了它们的内容。这样,现在a包含4、5、6,b包含1、2、3。
swap()函数简单而实用,可以用于交换set对象的内容。我们可以利用它来进行数据的重排序和搜索,或者调整存储集合的内存。