public member function
<queue>
std::swap (queue)
template <class T, class Container> void swap (queue<T,Container>& x, queue<T,Container>& y) noexcept(noexcept(x.swap(y)));
Exchange contents of queues
Exchanges the contents of x and y.
Parameters
- x,y
- queue containers of the same type. Size may differ.
Example
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
// swap queues
#include <iostream> // std::cout
#include <queue> // std::queue, std::swap(queue)
int main ()
{
std::queue<int> foo,bar;
foo.push (10); foo.push(20); foo.push(30);
bar.push (111); bar.push(222);
swap(foo,bar);
std::cout << "size of foo: " << foo.size() << '\n';
std::cout << "size of bar: " << bar.size() << '\n';
return 0;
}
|
Output:
size of foo: 2
size of bar: 3
|
Data races
Both container adaptors, x and y, are modified.
Exception safety
Provides the same level of guarantees as the operation performed on the underlying container objects.
See also
- queue::swap
- Swap contents (public member function)
- swap
- Exchange values of two objects (function template)