Поделиться через


<vector>Функции

swap

Меняет местами элементы двух векторов.

template <class Type, class Allocator>
void swap(vector<Type, Allocator>& left, vector<Type, Allocator>& right);

Параметры

right
Вектор, содержащий элементы, которые будут заменены, или вектор, элементы которого должны быть заменены на элементы вектора left.

left
Вектор, элементы которого должны поменяться местами с элементами вектора right.

Замечания

Функция шаблона — это алгоритм, специализированный для вектора класса контейнера для выполнения функции-члена left. vector::swap (right). Это экземпляры частичного упорядочивания шаблонов функций компилятором. Если функции шаблона перегружены таким образом, чтобы совпадение шаблона с вызовом функции не было уникальным, компилятор выберет самую специализированную версию функции шаблона. Общая версия функции шаблона, template <class T> void swap(T&, T&)в классе алгоритма работает по назначению и является медленной операцией. Специализированная версия в каждом контейнере работает гораздо быстрее, так как она может работать с внутренним представлением класса контейнера.

Пример

Пример кода для функции-члена vector::swap см. в примере, использующего версию swapшаблона.