# std::swap(std::queue)

< cpp‎ | container‎ | queue

定义于头文件 `<queue>` |  |
template< class T, class Container > void swap( std::queue<T,Container>& lhs, std::queue<T,Container>& rhs ); |  | (C++11 起) (C++17 前)
template< class T, class Container > void swap( std::queue<T,Container>& lhs, std::queue<T,Container>& rhs ) noexcept(/* see below */); |  | (C++17 起)

为 std::queue 特化 std::swap 算法。交换 `lhs` 与 `rhs` 的内容。调用 lhs.swap(rhs) 。

此重载仅若 std::is_swappable_v<Container> 为 true 才参与重载决议。 | (C++17 起)

### 参数

lhs, rhs | - | 要交换内容的容器

### 返回值

（无）

### 复杂度

与交换底层容器相同。

### 异常

`noexcept` 说明： noexcept(noexcept(lhs.swap(rhs))) | (C++17 起)

### 注解

尽管 std::swap 对容器适配器的重载是在 C++11 引入的， C++98 中已能用 std::swap 交换容器适配器。这种 std::swap 调用通常拥有线性时间复杂度，但可以提供更好的复杂度。

### 示例

| 本节未完成 原因：暂无示例

### 参阅

swap (C++11) | 交换内容 (公开成员函数)