Библиотека C ++ - <bitset>
Введение
Битовый набор представляет собой последовательность из N битов фиксированного размера и хранит значения 0 или 1. Ноль означает, что значение ложно или бит не установлен, а один означает, что значение истинно или установлен бит. Класс Bitset имитирует компактный массив логических значений, где каждый элемент занимает только один бит.
Поскольку он имитирует массив, его индекс также начинается с 0- й позиции. Доступ к отдельным битам из битового набора можно получить с помощью оператора индекса. Например, для доступа к первому элементу битового набора foo используйте foo [0] .
Класс Bitset предоставляет конструкторы для создания битового набора как из целых чисел, так и из строк. Размер от BitSet фиксируется во время компиляции. STL предоставляет класс vector <bool>, который обеспечивает функциональность динамического изменения размера.
Определение
Ниже приведено определение std :: bitset из заголовочного файла <bitset>.
template <size_t N> class bitset;
Параметры
N - Размер битового набора.
Типы участников
Следующие типы членов могут использоваться как параметры или возвращаемый тип функциями-членами.
Sr. No. | Типы участников | Определение |
---|---|---|
1 | Справка | Прокси-класс, представляющий ссылку на бит. |
Функции из <bitset>
Ниже приведен список всех методов из заголовка <bitset>.
Конструкторы
Sr. No. | Метод и описание |
---|---|
1 | bitset :: bitset ()
Создает контейнер битового набора и инициализирует его нулем. |
2 | bitset :: bitset ()
Создает контейнер битового набора и инициализирует его битовым значением val . |
3 | bitset :: bitset ()
Создает и инициализирует контейнер битового набора из строкового объекта C ++. |
4 | bitset :: bitset ()
Создает и инициализирует контейнер битового набора из строки c-стиля. |
Класс члена
Sr. No. | Метод и описание |
---|---|
1 | битсет :: ссылка ()
Это встроенный класс, который предоставляет l-значение, которое может быть возвращено из std :: bitset :: operator [] . |
Операторы битового набора
Sr. No. | Метод и описание |
---|---|
1 | битсет :: оператор & =
Выполняет побитовую операцию И для текущего объекта битового набора. |
2 | битсет :: оператор | =
Выполняет побитовую операцию ИЛИ для текущего объекта битового набора. |
3 | битсет :: оператор ^ =
Выполняет побитовую операцию XOR для текущего объекта битового набора. |
4 | битсет :: оператор << =
Выполняет побитовую операцию сдвига влево для текущего объекта битового набора. |
5 | битсет :: оператор >> =
Выполняет побитовую операцию SHIFT вправо для текущего объекта битового набора. |
6 | битсет :: оператор ~
Выполняет побитовую операцию НЕ над битовым набором. |
7 | bitset :: operator <<
Выполняет побитовую операцию сдвига влево над битовым набором. |
8 | битсет :: оператор >>
Выполняет побитовую операцию SHIFT вправо для битового набора. |
9 | битсет :: оператор ==
Проверьте, равны ли два набора битов. |
10 | битсет :: оператор! =
Проверьте, равны ли два набора битов. |
11 | bitset :: оператор &
Выполняет побитовую операцию И над битовым набором. |
12 | bitset :: оператор |
Выполняет побитовую операцию ИЛИ над битовым набором. |
13 | битсет :: оператор ^
Выполняет побитовую операцию XOR над битовым набором. |
14 | битсет :: оператор >>
Извлекает до N бит из is и сохраняет в другой битовый набор x . |
15 | битсет :: оператор >>
Вставляет битовый набор x в символьный поток os . |
Функции-члены
Sr. No. | Метод и описание |
---|---|
1 | битсет :: все ()
Проверяет, установлены ли все биты из битового набора или нет. |
2 | битсет :: любой ()
Проверяет, установлен ли хотя бы один бит из битового набора. |
3 | bitset :: count ()
Подсчитать количество установленных битов из битового набора. |
4 | bitset :: flip () все биты
Переключает все биты из битового набора. |
5 | bitset :: flip () одиночный бит
Переключает одиночный бит из битового набора. |
6 | bitset :: none ()
Проверяет, сброшены ли все биты. |
7 | bitset :: operator [] версия bool
Возвращает значение бита в позиции pos . |
8 | bitset :: operator [] справочная версия
Возвращает ссылку на бит в позиции pos . |
9 | bitset :: reset () все биты
Сбросить все биты битового набора в ноль. |
10 | bitset :: reset () одиночный бит
Сбросить один бит битового набора в ноль. |
11 | bitset :: set () все биты
Установите все биты из битового набора в единицу. |
12 | bitset :: set () одиночный бит Установите один бит из битового набора в единицу или ноль . |
13 | битсет :: размер ()
Сообщает размер битового набора. |
14 | bitset :: test ()
Проверяет, установлен ли N- й бит. |
15 | bitset :: to_string ()
Преобразует объект битового набора в строковый объект. |
16 | bitset :: to_ullong ()
Преобразование битового набора в unsigned long long. |
17 | bitset :: to_ulong ()
Преобразование битового набора в беззнаковый длинный. |
Функции, не являющиеся членами
Sr. No. | Метод и описание |
---|---|
1 | bitset :: hash ()
Возвращает хеш-значение на основе предоставленного битового набора. |