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)));
交換佇列
交換 xy 的內容。

引數

x,y
queue 相同型別的容器。大小可能不同。

返回值



示例

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;
}

輸出

size of foo: 2
size of bar: 3


複雜度

常量。

資料競爭

容器介面卡 xy 都被修改。

異常安全

提供與對底層容器物件執行的操作相同的保證。

另見