vector::swap
时间: 2024-01-04 13:18:49 浏览: 75
vector::swap()函数是C++ STL中vector容器的一个成员函数,用于交换两个vector容器的内容。这个函数的参数是另一个vector容器,两个容器的类型必须相同,但是它们的大小可以不同。使用swap()函数可以避免复制元素的开销,从而实现高效的交换操作。
下面是一个使用vector::swap()函数交换两个vector容器内容的例子:
```c++
#include <iostream>
#include <vector>
int main() {
std::vector<int> v1 = {1, 2, 3};
std::vector<int> v2 = {4, 5, 6, 7};
std::cout << "Before swap:\n";
std::cout << "v1: ";
for (auto i : v1) {
std::cout << i << " ";
}
std::cout << "\nv2: ";
for (auto i : v2) {
std::cout << i << " ";
}
std::cout << "\n";
v1.swap(v2);
std::cout << "After swap:\n";
std::cout << "v1: ";
for (auto i : v1) {
std::cout << i << " ";
}
std::cout << "\nv2: ";
for (auto i : v2) {
std::cout << i << " ";
}
std::cout << "\n";
return 0;
}
```
输出结果为:
```
Before swap:
v1: 1 2 3
v2: 4 5 6 7
After swap:
v1: 4 5 6 7
v2: 1 2 3
```
阅读全文