Biblioteka C ++ - <bitset>
Wprowadzenie
Zestaw bitów reprezentuje sekwencję N bitów o stałym rozmiarze i przechowuje wartości 0 lub 1. Zero oznacza, że wartość jest fałszywa lub bit jest nieustawiony, a jeden oznacza, że wartość jest prawdą lub bit jest ustawiony. Klasa Bitset emuluje efektywną przestrzennie tablicę wartości logicznych, w której każdy element zajmuje tylko jeden bit.
Jak to emuluje tablicę, jej wskaźnik zaczyna również od 0 th pozycji. Dostęp do pojedynczego bitu z zestawu bitów można uzyskać za pomocą operatora indeksu dolnego. Na przykład, aby uzyskać dostęp do pierwszego elementu zestawu bitów foo, użyj foo [0] .
Klasa Bitset udostępnia konstruktory do tworzenia zestawu bitów zarówno z liczb całkowitych, jak i łańcuchów. Rozmiar z bitset jest stała w czasie kompilacji. STL udostępnia klasę vector <bool>, która zapewnia funkcję dynamicznej zmiany rozmiaru.
Definicja
Poniżej znajduje się definicja std :: bitset z pliku nagłówkowego <bitset>
template <size_t N> class bitset;
Parametry
N - Rozmiar zestawu bitów.
Typy członków
Następujące typy elementów członkowskich mogą być używane jako parametry lub zwracane typy przez funkcje składowe.
Sr.No. | Typy członków | Definicja |
---|---|---|
1 | odniesienie | Klasa proxy, która reprezentuje odniesienie do bitu. |
Funkcje z <bitset>
Poniżej znajduje się lista wszystkich metod z nagłówka <bitset>.
Konstruktorzy
Sr.No. | Metoda i opis |
---|---|
1 | bitset :: bitset () Konstruuje kontener zestawu bitów i inicjalizuje go zerem. |
2 | bitset :: bitset () Konstruuje kontener zestawu bitów i inicjalizuje go wartością bitową val . |
3 | bitset :: bitset () Konstruuje i inicjuje kontener zestawu bitów z obiektu ciągu C ++. |
4 | bitset :: bitset () Konstruuje i inicjuje kontener zestawu bitów z ciągu w stylu c. |
Klasa członkowska
Sr.No. | Metoda i opis |
---|---|
1 | bitset :: reference () Jest to klasa osadzona, która dostarcza wartość l, którą można zwrócić z std :: bitset :: operator [] . |
Operatory zbiorów bitów
Sr.No. | Metoda i opis |
---|---|
1 | zestaw bitów :: operator & = Wykonuje operację bitową AND na bieżącym obiekcie zestawu bitów. |
2 | zestaw bitów :: operator | = Wykonuje operację bitową OR na bieżącym obiekcie zestawu bitów. |
3 | zestaw bitów :: operator ^ = Wykonuje bitową operację XOR na bieżącym obiekcie zestawu bitów. |
4 | zestaw bitów :: operator << = Wykonuje bitową lewą operację SHIFT na bieżącym obiekcie zestawu bitów. |
5 | zestaw bitów :: operator >> = Wykonuje bitową prawą operację SHIFT na bieżącym obiekcie zestawu bitów. |
6 | zestaw bitów :: operator ~ Wykonuje operację bitową NIE na zestawie bitów. |
7 | zestaw bitów :: operator << Wykonuje bitową lewą operację SHIFT na zestawie bitów. |
8 | zestaw bitów :: operator >> Wykonuje bitową prawą operację SHIFT na zestawie bitów. |
9 | zestaw bitów :: operator == Sprawdź, czy dwa zestawy bitów są równe, czy nie. |
10 | zestaw bitów :: operator! = Sprawdź, czy dwa zestawy bitów są równe, czy nie. |
11 | zestaw bitów :: operator & Wykonuje operację bitową AND na zbiorze bitów. |
12 | zestaw bitów :: operator | Wykonuje operację bitową OR na zbiorze bitów. |
13 | zestaw bitów :: operator ^ Wykonuje bitową operację XOR na zestawie bitów. |
14 | zestaw bitów :: operator >> Wyodrębnia do N bitów z is i zapisuje w innym zestawie bitów x . |
15 | zestaw bitów :: operator >> Wstawia zestaw bitów x do strumienia znaków os . |
Funkcje składowe
Sr.No. | Metoda i opis |
---|---|
1 | bitset :: all () Sprawdza, czy wszystkie bity z zestawu bitów są ustawione, czy nie. |
2 | bitset :: any () Sprawdza, czy co najmniej jeden bit z zestawu bitów jest ustawiony, czy nie. |
3 | bitset :: count () Policz liczbę ustawionych bitów z zestawu bitów. |
4 | bitset :: flip () wszystkie bity Przełącza wszystkie bity z zestawu bitów. |
5 | bitset :: flip () pojedynczy bit Przełącza pojedynczy bit z zestawu bitów. |
6 | bitset :: none () Sprawdza, czy wszystkie bity są nieustawione, czy nie. |
7 | bitset :: operator [] wersja bool Zwraca wartość bitu na pozycji poz . |
8 | bitset :: operator [] wersja odniesienia Zwraca odniesienie do bitu w pozycji poz . |
9 | bitset :: reset () wszystkie bity Zresetuj wszystkie bity zestawu bitów do zera. |
10 | bitset :: reset () pojedynczy bit Zresetuj pojedynczy bit zestawu bitów do zera. |
11 | bitset :: set () wszystkie bity Ustaw wszystkie bity z zestawu bitów na jeden. |
12 | bitset :: set () pojedynczy bit Ustaw pojedynczy bit z zestawu bitów na jeden lub zero . |
13 | bitset :: size () Podaje rozmiar zestawu bitów. |
14 | bitset :: test () Sprawdza, czy N- ty bit jest ustawiony, czy nie. |
15 | bitset :: to_string () Konwertuje obiekt bitset na obiekt typu string. |
16 | zestaw bitów :: to_ullong () Konwertuj zestaw bitów na długi bez znaku. |
17 | zestaw bitów :: to_ulong () Konwertuj zestaw bitów na długość bez znaku. |
Funkcje niebędące członkami
Sr.No. | Metoda i opis |
---|---|
1 | bitset :: hash () Zwraca wartość skrótu na podstawie podanego zestawu bitów. |