Пространства имён
Варианты
Действия

std::vector<bool>

Материал из cppreference.com
< cpp‎ | container
 
 
 
std::vector<bool>
Функции-члены
vector::vector
vector::~vector
vector::operator=
vector::assign
vector::get_allocator
Элемент доступа
Оригинал:
Element access
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
vector::at
vector::operator[]
vector::front
vector::back
Итераторы
Оригинал:
Iterators
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
vector::begin
vector::cbegin

(C++11)
vector::end
vector::cend

(C++11)
vector::rbegin
vector::crbegin

(C++11)
vector::rend
vector::crend

(C++11)
Потенциала
Оригинал:
Capacity
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.
vector::empty
vector::size
vector::max_size
vector::reserve
vector::capacity
Модификаторы
vector::clear
vector::insert
vector::erase
vector::push_back
vector::pop_back
vector::resize
vector::swap
std::vector<bool> specific
vector<bool>::flip
vector<bool>::swap
 
Определено в заголовочном файле <vector>
template<class Allocator = std::allocator<bool>>
class vector<bool, Allocator>;

std::vector<bool> — компактный специализированный std::vector типа bool.

Способ, которым std::vector<bool> сделан компактным, определяется реализацией. Одной из потенциальных оптимизаций является сливание векторных элементов таким образом, что каждый элемент занимает один бит, а не байт, как обычный элемент типа bool.

std::vector<bool> ведет себя аналогично std::vector, но для того, чтобы быть компактным, он:

  • Не обязательно хранит свои данные в одном непрерывный кусок памяти.
  • Предоставляет std::vector<bool>::reference как метод доступа к отдельным битам.
  • Не использует std::allocator_traits::construct чтобы построить битовые значения.

Содержание

[править] Типы-члены

Тип-член Определение
value_type bool [edit]
allocator_type Allocator [edit]
size_type Определяется реализацией [edit]
difference_type Определяется реализацией[edit]
Прокси-класс, представляющий собой ссылку на один bool
(класс)
const_reference bool [edit]
pointer Определяется реализацией[edit]
const_pointer Определяется реализацией[edit]
iterator Определяется реализацией [edit]
const_iterator Определяется реализацией [edit]
reverse_iterator std::reverse_iterator<iterator> [edit]
const_reverse_iterator std::reverse_iterator<const_iterator> [edit]

[править] Функции-члены

Создаёт vector
(public функция-член std::vector) [edit]
Уничтожает vector
(public функция-член std::vector) [edit]
Задаёт значения в контейнере
(public функция-член std::vector) [edit]
Задаёт значения в контейнере
(public функция-член std::vector) [edit]
Возвращает связанный аллокатор
(public функция-член std::vector) [edit]
Доступ к элементам
Предоставляет доступ к указанному элементу с проверкой индекса
(public функция-член std::vector) [edit]
Предоставляет доступ к указанному элементу
(public функция-член std::vector) [edit]
Предоставляет доступ к первому элементу
(public функция-член std::vector) [edit]
Предоставляет доступ к последнему элементу
(public функция-член std::vector) [edit]
Итераторы
Возвращает итератор на первый элемент
(public функция-член std::vector) [edit]
Возвращает итератор на элемент, следующий за последним
(public функция-член std::vector) [edit]
Возвращает обратный итератор на первый элемент
(public функция-член std::vector) [edit]
Возвращает обратный итератор на элемент, следующий за последним
(public функция-член std::vector) [edit]
Объём
Проверяет отсутствие элементов в контейнере
(public функция-член std::vector) [edit]
Возвращает количество элементов в контейнере
(public функция-член std::vector) [edit]
Возвращает максимально допустимое количество элементов в контейнере
(public функция-член std::vector) [edit]
Зарезервировать память.
(public функция-член std::vector) [edit]
Возвращает количество элементов, которые могут одновременно храниться в выделенной области памяти
(public функция-член std::vector) [edit]
Модификаторы
Очищает контейнер
(public функция-член std::vector) [edit]
Вставляет элементы
Оригинал:
inserts elements
Текст был переведён автоматически используя Переводчик Google.
Вы можете проверить и исправить перевод. Для инструкций щёлкните сюда.

(public функция-член std::vector) [edit]
Удаляет элементы
(public функция-член std::vector) [edit]
Добавляет элемент в конец
(public функция-член std::vector) [edit]
Удаляет последний элемент
(public функция-член std::vector) [edit]
Изменяет количество хранимых элементов
(public функция-член std::vector) [edit]
Обменивает содержимое
(public функция-член std::vector) [edit]
Специфические модификаторы vector<bool>
Заменяет значения в векторе на противоположные
(public функция-член) [edit]
[static]
Меняет местами два std::vector<bool>::reference
(public static функция-член) [edit]

[править] Функции не члены

Лексикографически сравнивает значения в vector
(шаблон функции) [edit]
Специализированный std::swap алгоритм
(шаблон функции) [edit]

[править] Примечания

Если размер BitSet известен во время компиляции, может быть использован std::bitset, который предлагает богатый набор функций-членов. Кроме того, как альтернатива std::vector<bool>, существует boost::dynamic_bitset.