public member function
<queue>

std::priority_queue::swap

void swap (priority_queue& x) noexcept (/*see below*/);
交换内容
通过调用相应的(未加限定的)swap 非成员函数,交换容器适配器的内容与x,同时交换底层容器值和它们的比较函数

此成员函数具有一个 noexcept 说明符,该说明符与底层容器比较函数swap 操作的组合 noexcept 匹配。

参数

x
另一个同类型的 priority_queue 容器适配器(即,使用相同的模板参数 TContainerCompare 实例化)。大小可能不同。

返回值



示例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// priority_queue::swap
#include <iostream>       // std::cout
#include <queue>          // std::priority_queue

int main ()
{
  std::priority_queue<int> foo,bar;
  foo.push (15); foo.push(30); foo.push(10);
  bar.push (101); bar.push(202);

  foo.swap(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


复杂度

常量。

数据竞争

both *this and x are modified.

异常安全

Provides the same level of guarantees as the operation performed on the underlying container objects.

另见