Поделиться через


Класс vector<bool>::reference

Класс vector<bool>::reference — это прокси-класс, предоставленный классом vector<bool> для моделирования bool&.

Заметки

Необходима смоделированная ссылка, поскольку C++ изначально не допускает прямых ссылок на биты. vector<bool> использует только один бит на элемент, ссылку на который можно создать с помощью данного класса прокси. Однако моделирование ссылки является незавершенным, поскольку определенные назначения не являются допустимыми. Например, поскольку невозможно получить адрес объекта vector<bool>::reference, следующий код, использующий объект vector<bool>::operator[], является неправильным:

    vector<bool> vb;
...
    bool* pb = &vb[1]; // conversion error - do not use
    bool& refb = vb[1];   // conversion error - do not use

Функции-члены

flip

Инвертирует логическое значение элемента вектора.

operator bool

Обеспечивает неявное преобразование из vector<bool>::reference в bool.

operator=

Присваивает биту логическое значение или значение, которое содержит элемент со ссылкой.

Требования

Заголовок: <vector>

Пространство имен: std

См. также

Ссылки

<vector>

Потокобезопасность в стандартной библиотеке C++

Библиотека стандартных шаблонов