Biblioteka C ++ - <unordered_set>
Wprowadzenie
Jest to kontener asocjacyjny przechowujący unikalne elementy w dowolnej kolejności, który pozwala na szybkie pobieranie poszczególnych elementów na podstawie ich wartości.
Definicja
Poniżej znajduje się definicja std :: unordered_set
template < class Key,
class Hash = hash<Key>,
class Pred = equal_to<Key>,
class Alloc = allocator<Key>
> class unordered_set;
Parametry
Key - Określa rodzaj elementu.
Hash - Jest to jednoargumentowy obiekt funkcyjny.
Pred - Jest to predykat binarny, który przyjmuje dwa argumenty tego samego typu co elementy i zwraca wartość bool.
Alloc - Określa typ allowcater.
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.
| typ członka | definicja | notatki |
|---|---|---|
| typ klucza | Jest to pierwszy parametr szablonu ( klucz ) | |
| typ wartości | Jest to pierwszy parametr szablonu ( klucz ) | To samo, co key_type |
| hasher | Jest to drugi parametr szablonu ( Hash ) | domyślnie: hash <key_type> |
| key_equal | To trzeci parametr szablonu ( Pred ) | domyślnie: equal_to <key_type> |
| Alokator_typ | To czwarty parametr szablonu ( Alloc ) | domyślnie: alokator <value_type> |
| odniesienie | Alloc :: reference | |
| const_reference | Alloc :: const_reference | |
| wskaźnik | Alloc :: pointer | dla domyślnego alokatora: typ_wartości * |
| const_pointer | Alloc :: const_pointer | dla domyślnego alokatora: const value_type * |
| iterator | iterator do przodu do const value_type | * można zamienić na const_iterator |
| const_iterator | iterator do przodu do const value_type | * |
| local_iterator | iterator do przodu do const value_type | * można zamienić na const_local_iterator |
| const_local_iterator | iterator do przodu do const value_type | * |
| typ_rozmiaru | typ całkowity bez znaku | zwykle taki sam jak size_t |
| typ_różnicy | typ całkowy ze znakiem | zwykle to samo, co ptrdiff_t |
Funkcje składowe
Poniżej znajduje się lista funkcji członków
| Sr.No. | Metoda i opis |
|---|---|
| 1 | (konstruktor) Konstruuje unordered_set. |
| 2 | (burzyciel) Niszczy unordered_set. |
| 3 | operator = Służy do przypisywania treści. |
Pojemność
| Sr.No. | Pojemność i opis |
|---|---|
| 1 | pusty Służy do sprawdzenia, czy pojemnik jest pusty. |
| 2 | rozmiar Zwraca rozmiar pojemnika. |
| 3 | największy rozmiar Zwraca maksymalny rozmiar. |
Iteratory
| Sr.No. | Iteratory i opis |
|---|---|
| 1 | zaczynać Przywraca iterator do początku. |
| 2 | koniec Zwraca iterator do końca. |
| 3 | cbegin Zwraca const_iterator na początek. |
| 4 | cend Zwraca const_iterator do końca. |
Wyszukiwanie elementów
| Sr.No. | Wyszukiwanie i opis elementu |
|---|---|
| 1 | odnaleźć Służy do uzyskania iteratora do elementu. |
| 2 | liczyć Służy do liczenia elementów za pomocą określonego klucza. |
| 3 | equal_range Służy do pobierania zakresu elementów z określonym kluczem. |
Modyfikatory
| Sr.No. | Modyfikatory i opis |
|---|---|
| 1 | miejsce Służy do konstruowania i wstawiania elementu. |
| 2 | embrace_hint Służy do konstruowania i wstawiania elementu z podpowiedzią. |
| 3 | wstawić Służy do wstawiania elementów. |
| 4 | wymazać Służy do usuwania elementów. |
| 5 | jasny Służy do czyszczenia treści. |
| 6 | zamiana Służy do wymiany treści. |
Wiadra
| Sr.No. | Wiadra i opis |
|---|---|
| 1 | bucket_count Zwraca liczbę segmentów. |
| 2 | max_bucket_count Zwraca maksymalną liczbę segmentów. |
| 3 | rozmiar_wiadra Zwraca rozmiar łyżki. |
| 4 | wiadro Lokalizuje wiadro elementu. |
Polityka hashowania
| Sr.No. | Zasady skrótów i opis |
|---|---|
| 1 | Współczynnik obciążenia Zwraca współczynnik obciążenia. |
| 2 | max_load_factor Służy do uzyskania lub ustawienia maksymalnego współczynnika obciążenia. |
| 3 | rehash Służy do ustawiania liczby wiader. |
| 4 | rezerwować Daje żądanie zmiany pojemności backets |
Obserwatorzy
| Sr.No. | Obserwatorzy i opis |
|---|---|
| 1 | hash_function Służy do uzyskania funkcji skrótu. |
| 2 | key_eq Służy do uzyskania predykatu równoważności klucza. |
| 3 | get_allocator Służy do uzyskania alokatora. |
| Sr.No. | Przeciążenia funkcji niebędących członkami i opis |
|---|---|
| 1 | operatory (unordered_set) Służy do uzyskania funkcji skrótu. |
| 2 | swap (unordered_set) Wymienia zawartość dwóch kontenerów unordered_set. |
Predefiniowane iteratory
| Sr.No. | Przeciążenia funkcji niebędących członkami i opis |
|---|---|
| 1 | operatory (unordered_set) Służy do uzyskania funkcji skrótu. |
| 2 | swap (unordered_set) Wymienia zawartość dwóch kontenerów unordered_set. |