c++ vec swap
时间: 2023-11-18 11:52:33 浏览: 78
C++ 中的 std::vector 类型提供了 swap() 成员函数,用于交换两个 vector 对象的内容。其函数原型如下:
```cpp
void swap(vector& x);
```
其中,x 是另一个 vector 对象。
使用 swap() 函数可以在不进行元素复制的情况下,快速交换两个 vector 对象的内容,从而提高程序效率。
示例代码如下:
```cpp
#include <iostream>
#include <vector>
using namespace std;
int main() {
vector<int> v1 = {1, 2, 3};
vector<int> v2 = {4, 5, 6};
cout << "Before swap:" << endl;
cout << "v1: ";
for (auto i : v1) {
cout << i << " ";
}
cout << endl;
cout << "v2: ";
for (auto i : v2) {
cout << i << " ";
}
cout << endl;
v1.swap(v2);
cout << "After swap:" << endl;
cout << "v1: ";
for (auto i : v1) {
cout << i << " ";
}
cout << endl;
cout << "v2: ";
for (auto i : v2) {
cout << i << " ";
}
cout << endl;
return 0;
}
```
输出结果为:
```
Before swap:
v1: 1 2 3
v2: 4 5 6
After swap:
v1: 4 5 6
v2: 1 2 3
```
阅读全文