# std::vector<bool>::reference

< cpp‎ | container‎ | vector bool

class reference; |  |

std::vector<bool> 特化定义 std::vector<bool>::reference 为可公开访问的嵌套类。 std::vector<bool>::reference 代理访问 std::vector<bool> 中单个位的行为。

std::vector<bool>::reference 的基础使用是提供能从 `operator[]` 返回的左值。

任何通过 std::vector<bool>::reference 发生的对 vector 的读或写，会潜在地读或写整个底层的 vector 。

### 成员函数

(构造函数) | 构造引用，仅为 std::vector<bool> 自身所能访问 (公开成员函数)
(析构函数) | 销毁引用 (公开成员函数)
operator= | 赋 bool 给被引用位 (公开成员函数)
operator bool | 返回被引用位 (公开成员函数)
flip | 翻转被引用位 (公开成员函数)

## std::vector<bool>::reference::~reference

~reference(); |  | (C++20 前)
constexpr ~reference(); |  | (C++20 起)

销毁 `reference` 。

## std::vector<bool>::reference::operator=

reference& operator=( bool x ); reference& operator=( const reference& x ); |  | (C++11 前)
reference& operator=( bool x ) noexcept; reference& operator=( const reference& x ) noexcept; |  | (C++11 起) (C++20 前)
constexpr reference& operator=( bool x ) noexcept; constexpr reference& operator=( const reference& x ) noexcept; |  | (C++20 起)

赋值给被引用位。

### 参数

x | - | 要赋值的值

### 返回值

*this

## std::vector<bool>::reference::operator bool

operator bool() const; |  | (C++11 前)
operator bool() const noexcept; |  | (C++11 起) (C++20 前)
constexpr operator bool() const noexcept; |  | (C++20 起)

返回被引用位。

### 参数

（无）

### 返回值

被引用位。

## std::vector<bool>::reference::flip

void flip(); |  | (C++11 前)
void flip() noexcept; |  | (C++11 起) (C++20 前)
constexpr void flip() noexcept; |  | (C++20 起)

反转被引用位。

### 参数

（无）

### 返回值

（无）

### 参阅

operator[] | 访问指定的元素 (`std::vector<T,Allocator>` 的公开成员函数)
swap [静态] | 交换二个 `std::vector<bool>::reference` (公开静态成员函数)