Метод swap
Метод swap обменивает содержимое двух векторов.
После вызова этого метода первый вектор получает элементы
второго вектора, а второй - элементы первого. Размеры
и вместимость (capacity) векторов также обмениваются.
Метод не принимает параметров, кроме вектора, с которым
нужно произвести обмен.
Синтаксис
vec1.swap(vec2)
Пример
Давайте обменяем содержимое двух векторов:
#include <iostream>
#include <vector>
using namespace std;
int main()
{
vector<int> vec1 = {1, 2, 3};
vector<int> vec2 = {4, 5};
vec1.swap(vec2);
cout << "vec1: ";
for (int el : vec1) {
cout << el << " ";
}
cout << endl;
cout << "vec2: ";
for (int el : vec2) {
cout << el << " ";
}
cout << endl;
return 0;
}
Результат выполнения кода:
"vec1: 4 5"
"vec2: 1 2 3"
Пример
Давайте обменяем содержимое вектора с вектором, который содержит строки:
#include <iostream>
#include <vector>
#include <string>
using namespace std;
int main()
{
vector<string> vec1 = {"a", "b", "c"};
vector<string> vec2 = {"d", "e"};
vec1.swap(vec2);
cout << "vec1: ";
for (string el : vec1) {
cout << el << " ";
}
cout << endl;
cout << "vec2: ";
for (string el : vec2) {
cout << el << " ";
}
cout << endl;
return 0;
}
Результат выполнения кода:
"vec1: d e"
"vec2: a b c"