Функция swap
Функция swap обменивает значения двух объектов.
В первый параметр мы передаем первый объект, а во второй -
второй объект. После выполнения функции значения этих
объектов меняются местами. Функция доступна как для
встроенных типов, так и для контейнеров стандартной
библиотеки.
Синтаксис
swap(a, b)
Пример
Давайте обменяем значения двух целых чисел:
#include <iostream>
#include <utility>
using namespace std;
int main()
{
int a = 1;
int b = 2;
swap(a, b);
cout << a << " " << b << endl;
return 0;
}
Результат выполнения кода:
2 1
Пример
Давайте обменяем значения двух строк:
#include <iostream>
#include <string>
#include <utility>
using namespace std;
int main()
{
string a = "abcde";
string b = "12345";
swap(a, b);
cout << a << " " << b << endl;
return 0;
}
Результат выполнения кода:
"12345" "abcde"
Пример
Давайте обменяем значения двух элементов вектора:
#include <iostream>
#include <vector>
#include <utility>
using namespace std;
int main()
{
vector<int> vec = {1, 2, 3, 4, 5};
swap(vec[0], vec[4]);
for (int num : vec) {
cout << num << " ";
}
cout << endl;
return 0;
}
Результат выполнения кода:
5 2 3 4 1