std::vector<bool,Allocator>::swap

From cppreference.com
 
 
Containers library
Sequence
(C++11)
Associative
Unordered associative
Adaptors
Views
(C++20)
 
 
Defined in header <vector>
static void swap(reference x, reference y);
(until C++20)
constexpr static void swap(reference x, reference y);
(since C++20)

Swaps the contents of x and y.

Parameters

x - std::vector<bool>::reference value to swap with y
y - std::vector<bool>::reference value to swap with x

Return value

(none)

Complexity

Constant.

Example

#include <vector>
#include <iostream>
 
int main()
{
    std::vector<bool> vb1{ 1,0 };
 
    for (auto e : vb1) { std::cout << e << " "; }
    std::cout << '\n';
 
    vb1.swap(vb1[0], vb1[1]);
 
    for (auto e : vb1) { std::cout << e << " "; }
}

Output:

1 0 
0 1

See also

proxy class representing a reference to a single bool
(class)
swaps the contents
(public member function of std::vector<T,Allocator>)
specializes the std::swap algorithm
(function template)