Biblioteka C ++ - <set>
Wprowadzenie
ZA setto kontener asocjacyjny, który zawiera posortowany zestaw unikatowych obiektów typu Key. Każdy element może wystąpić tylko raz, więc duplikaty nie są dozwolone.
Istnieją cztery rodzaje kontenerów asocjacyjnych: zestaw, multiset, mapa i multimapa.
Wartość elementów w zestawie nie może być modyfikowana raz w kontenerze, tzn. Elementy są zawsze stałe. Ale można je włożyć lub wyjąć z pojemnika.
Kontenery set są generalnie wolniejsze niż kontenery unordered_set w dostępie do poszczególnych elementów za pomocą ich klucza, ale pozwalają na bezpośrednią iterację podzbiorów w oparciu o ich kolejność.
Definicja
Poniżej znajduje się definicja std :: set z pliku nagłówkowego <set>
template <
class Key,
class Compare = std::less<Key>,
class Allocator = std::allocator<Key>
> class set;
Parametry
Key - Typ zawartego elementu.
Klucz można zastąpić dowolnym innym typem danych, w tym typem zdefiniowanym przez użytkownika.
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 | typ klucza | Klucz |
2 | typ wartości | Klucz |
3 | odniesienie | Allocator :: reference typ wartości& |
4 | const_reference | Allocator :: const_reference const value_type & |
5 | wskaźnik | Allocator :: pointer std :: Alokator_traits <Allocator> :: pointer |
6 | const_pointer | Allocator :: const_pointer std :: Alokator_traits <Allocator> :: const_pointer |
7 | iterator | DwukierunkowyIterator |
8 | const_iterator | stała BidirectionalIterator |
9 | reverse_iterator | std :: reverse_iterator <iterator> |
10 | const_reverse_iterator | std :: reverse_iterator <const_iterator> |
11 | typ_rozmiaru | Typ liczby całkowitej bez znaku (std :: size_t) |
12 | typ_różnicy | Signed Integer Type (std :: ptrdiff_t) |
13 | key_compare | Porównać |
14 | porównanie_wartości | Porównać |
15 | Alokator_typ | Alokator |
Funkcje z <set>
Poniżej znajduje się lista wszystkich metod z nagłówka <set>.
FUNKCJE CZŁONKOWSKIE
DEFAULT MEMBER FUNCTIONS
Sr.No. | Metoda i opis |
---|---|
1 | Konstruktor domyślny
Konstruuje kontener zestawu. |
2 | Konstruktor zakresu
Konstruuje zestaw kontenerów z zawartością zakresu. |
3 | Konstruktor kopiujący
Konstruuje kontener zestawu z kopią innego zestawu. |
4 | Konstruktor ruchu
Konstruuje kontener zestawu z zawartością innego zestawu przy użyciu semantyki przenoszenia. |
5 | Konstruktor listy inicjalizacyjnej
Konstruuje kontener zestawu z zawartością listy inicjalizatora. |
6 | (burzyciel)
Niszczy ustawiony pojemnik. |
7 | operator =
Przypisuje wartości do ustawionego kontenera. |
ITERATORZY
Sr.No. | Metoda i opis |
---|---|
1 | set :: begin
Przywraca iterator do początku. |
2 | zestaw :: cbegin
Zwraca iterator const na początek. |
3 | set :: end
Zwraca iterator do końca. |
4 | zestaw :: cend
Zwraca iterator const do końca. |
5 | zestaw :: rbegin
Zwraca iterator odwrotny do odwrotnego początku. |
6 | zestaw :: crbegin
Zwróć const reverse iterator, aby odwrócić początek. |
7 | set :: rend
Zwraca odwrotny iterator do odwrotnego końca. |
8 | set :: crend
Zwraca iterator odwrócenia const odwrotnego końca. |
POJEMNOŚĆ
Sr.No. | Metoda i opis |
---|---|
1 | set :: empty
Zwraca, gdy ustawiony kontener jest pusty. |
2 | zestaw :: rozmiar
Zwraca liczbę elementów w ustawionym kontenerze. |
3 | set :: max_size
Zwraca maksymalną liczbę elementów, które może pomieścić ustawiony kontener. |
MODYFIKATORY
Sr.No. | Metoda i opis |
---|---|
1 | set :: clear
Usuwa wszystkie elementy z pojemnika zestawu. |
2 | zestaw :: wstaw
Wstawia nowy element do kontenera zestawu. |
3 | set :: emplace
Wstawia nowy element do zestawu, jeśli jest unikalny. |
4 | set :: emplace_hint
Wstawia do zestawu nowy element, jeśli jest unikalny, ze wskazówką dotyczącą pozycji wstawienia. |
5 | set :: erase
Usuwa pojedynczy element lub zakres elementów z kontenera zestawu. |
6 | set :: swap
Zamienia zawartość kontenera na zawartość innego zestawu kontenera tego samego typu. |
WYSZUKAJ
Sr.No. | Metoda i opis |
---|---|
1 | set :: count
Zwraca liczbę elementów o pasującej wartości w ustawionym kontenerze. |
2 | zestaw :: znajdź
Przeszukuje kontener zestawu pod kątem wartości i zwraca do niego iterator, jeśli zostanie znaleziony, w przeciwnym razie zwraca iterator do set :: end. |
3 | set :: lower_bound
Zwraca iterator wskazujący na pierwszy element w kontenerze zestawu, który nie znajduje się przed wartością. |
4 | set :: upper_bound
Zwraca iterator wskazujący na pierwszy element w kontenerze zestawu, który jest uważany za znajdujący się za wartością. |
5 | set :: equal_range
Zwraca granice zakresu obejmującego wszystkie elementy w kontenerze zestawu, które są równoważne wartości. |
OBSERWATORZY
Sr.No. | Metoda i opis |
---|---|
1 | set :: key_comp
Zwraca kopię obiektu porównania używanego przez kontener zestawu. |
2 | set :: value_comp
Zwraca kopię obiektu porównania używanego przez kontener zestawu. |
ALOKATOR
Sr.No. | Metoda i opis |
---|---|
1 | set :: get_allocator
Zwraca kopię obiektu alokatora skojarzonego z kontenerem zestawu. |