przejście do zawartości
zpr c++ quick reference
Narzędzia użytkownika
Zarejestruj się!
Zaloguj
Narzędzia witryny
Narzędzia
Pokaż stronę
Poprzednie wersje
Odnośniki
Ostatnie zmiany
Menadżer multimediów
Indeks
Zaloguj
Zarejestruj się!
Ostatnie zmiany
Menadżer multimediów
Indeks
Ślad:
opis_kontenera:hash_multiset
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
== Opis kontenera hash_multiset == Autor: Kamil Halicki ---- **hash_multiset<Key, HashFcn, EqualKey, Alloc>** Wielozbiór haszujący jest kontenerem , który pozwala przechowywać wiele elementów o takiej samej wartości. hash_multiset czyli wielozbiór haszujący jest to kontener asocjacyjnym umożliwiający przechowywanie elementów które nie muszą być unikatowe oraz zapewniający szybkie wyszukiwanie i zliczanie elementów o podanym kluczu. Jest to zbiór elementów tak więc klucz i wartość danego elementu są takie same. Dzięki wykorzystaniu tablicy mieszającej zamorytyzowany czas wykonania podstawowych operacji na kontenerze wynosi O(1). Szablon kontenera jest parametryzowany następującymi typami: |Key|Typ klucza oraz wartości elementów w kontenerze. Typ Key musi mieć zdefiniowaną operację przypisania.| |HashFcn|Funkcja haszująca używana przez wielozbiór. Domyślnie wartość: hash<Key>| |EqualKey | Binarny predykat definiujacy relację równoważności pomiędzy kluczami. Jest to funkcja (lub funktor) przyjmująca dwie argumenty typu Key oraz wracający true jeśli klucze są równe oraz false w przeciwnym przypadku. Domyślna wartość: equal_to<Key>| |Alloc | Alokator używany do zarządzania pamięcią | **Typy:** |value_type|Typ obiektów przechowywanych w wielozbiorze| |key_type|Typ klucza elementów kontenera| |hasher|Funkcja haszująca | |key_equal|Obiekt funkcyjny porównujący klucze| |pointer|Wskaźnik na typ value_type| |reference|Referencja do typu value_type| |const_reference|Stała referencja do typu value_type| |size_type|Typ całkowity bez znaku| |difference_type|Typ całkowity ze znakiem| |iterator |Iterator używany do przechodzenia po elementach wielozbioru| |const_iterator|Stały iterator kontenera| Metody: iterator begin() Zwraca iterator wskazujący na początek wielozbioru iterator end() const Zwraca iterator wskazujący na koniec wielozbioru size_type size() const Zwraca rozmiar wielozbioruReturns the size of the hash_multiset size_type max_size() const Zwraca największy możliwy rozmiar kontenera bool empty() const Zwraca true jeśli rozmiar wielozbióru wynosi 0 oraz false w przeciwnym przypadku size_type bucket_count() const Zwraca liczbę kubełków używanych przez wielozbiór haszujący void resize(size_type n) Zwiększa liczbę kubełków do wartości nie mniejszej niż n hasher hash_funct() const Zwraca funkcję haszującą key_equal key_eq() const Zwraca funkcję porównującą klucze hash_multiset() Tworzy pusty wielozbiór hash_multiset(size_type n) Tworzy pusty wielozbiór z przynajmniej n kubełkami hash_multiset(size_type n, const hasher& h) Tworzy pusty wielozbiór z przynajmniej n kubełkami, używając funkcji haszujacej h hash_multiset(size_type n, const hasher& h, const key_equal& k) Tworzy pusty wielozbiór z przynajmniej n kubełkami, używając funkcji haszujacej h oraz funkcją porównujacą k template <class InputIterator> hash_multiset(InputIterator, InputIterator) Tworzy wielozbiór z kopii elementów pochodzących z podanego zakresu template <class InputIterator> hash_multiset(InputIterator, InputIterator, size_type n) Tworzy wielozbiór z kopii elementów pochodzących z podanego zakresu posiadający przynajmniej n kubełków. template <class InputIterator> hash_multiset(InputIterator, InputIterator, size_type n, const hasher& h) Tworzy wielozbiór z kopii elementów pochodzących z podanego zakresu posiadający przynajmniej n kubełków, używając funkcji haszującej h. template <class InputIterator> hash_multiset(InputIterator, InputIterator, size_type n, const hasher& h, const key_equal& k) Tworzy wielozbiór z kopii elementów pochodzących z podanego zakresu posiadający przynajmniej n kubełków, używając funkcji haszującej h oraz funkcji porównującej k hash_multiset(const hash_multiset&) Konstruktor kopiujący hash_multiset& operator=(const hash_multiset&) Operator przypisania void swap(hash_multiset&) Zamienia zawartość dwóch wielozbiorów iterator insert(const value_type& x) Wstawia x do kontenera template <class InputIterator> void insert(InputIterator, InputIterator) Wstawia podany zakres do wielozbioru void erase(iterator pos) Usuwa element wskazywany przez pos size_type erase(const key_type& k) Usuwa element którego kluczem jest k void erase(iterator first, iterator last) Usuwa wszystkie elementy w podanym zakresie void clear() Usuwa wszystkie elementy z kontenera iterator find(const key_type& k) const Znajduje element o kluczu k size_type count(const key_type& k) const Podaje liczbę wystąpień elementów o kluczu k pair<iterator, iterator> equal_range(const key_type& k) const Znajduje zakrez zawierający wszystkie elementy o kluczu k Funkcje globalne: bool operator==(const hash_multiset&, const hash_multiset&) Porównuje czy dwia wielozbiory są równe.
opis_kontenera/hash_multiset.1229032794.txt.gz
· ostatnio zmienione: 2008/12/11 22:59 przez
khalicki
Narzędzia strony
Pokaż stronę
Poprzednie wersje
Odnośniki
Do góry