| void swap( vector& other ); | 
Exchanges the contents of the container with those of other. Does not invoke any move, copy, or swap operations on individual elements.
All iterators and references remain valid. The past-the-end iterator is invalidated.
| If std::allocator_traits<allocator_type>::propagate_on_container_swap::valueis true, then the allocators are exchanged using an unqualified call to non-memberswap. Otherwise, they are not swapped (and ifget_allocator() != other.get_allocator(), the behavior is undefined). | (since C++11) | 
Parameters
| other | - | container to exchange the contents with | 
Return value
(none).
Exceptions
| (none). | (until C++17) | 
| noexceptspecification:noexcept(std::allocator_traits<Allocator>::propagate_on_container_swap::value | (since C++17) | 
Complexity
Constant.
See also
| specializes the std::swapalgorithm(function template) | 
Example
#include <vector>
#include <iostream>
 
void printVector(std::vector<int>& vec)
{
    for (int a : vec)
    {
        std::cout << a << " ";
    }
}
 
int main()
{
    std::vector<int> v1{1, 2, 3};
    std::vector<int> v2{7, 8, 9};
 
    std::cout << "v1: ";
    printVector(v1);
 
    std::cout << "\nv2: ";
    printVector(v2);
 
    std::cout << "\n-- SWAP\n";
    v2.swap(v1);
 
    std::cout << "v1: ";
    printVector(v1);
 
    std::cout << "\nv2: ";
    printVector(v2);
}Output:
v1: 1 2 3 v2: 7 8 9 -- SWAP v1: 7 8 9 v2: 1 2 3
 
          
Please login to continue.