Przestrzenie nazw
Warianty
Działania

Szablon:cpp/container/equal range ord

Z cppreference.com

Szablon:cpp/container//title Szablon:cpp/container//navbar

std::pair<iterator,iterator> equal_range( const Key& key );
(1)
std::pair<const_iterator,const_iterator> equal_range( const Key& key ) const;
(2)

Zwraca przedział, zawierający wszystkie elementy o danym kluczu z kontenera. Przedział jest zdefiniowany przez dwa iteratory, jeden wskazujący na pierwszy element, który jest nie mniejszy niż key, a drugi wskazujący na pierwszy element większy niż key. Alternatywnie, pierwszy iterator można uzyskać wykorzystując lower_bound(), a drugi wykorzystując upper_bound().

1,2) Porównują klucze elementów do key.

Spis treści

[edytuj] Parametry

key - wartość klucza, do którego będą porównywane elementy

[edytuj] Zwracana wartość

Para std::pair zawiera iteratory określające oczekiwany przedział: pierwszy wskazujący na pierwszy element nie mniejszy niż key, a drugi wskazujący na pierwszy element większy niż key.

Jeśli nie ma elementów nie mniejszych niż key, iterator zakońcowy(ang) (zobacz end()) zostanie zwrócony jako pierwszy element. Podobnie, jeśli nie ma elementów większych niż key, iterator zakońcowy(ang) (zobacz end()) zostanie zwrócony jako drugi element.

Ponieważ insert zawsze wstawia nowe elementy o tych samych kluczach za tymi obecnymi już w kontenerze, kolejność elementów na zwróconym przedziale jest taka, jak kolejności ich wstawienia. (od C++11)

[edytuj] Złożoność

Logarytmiczna względem rozmiaru kontenera.

[edytuj] Przykład

[edytuj] Zobacz także

znajduje element ze wskazanym kluczem
(publiczna metoda z Szablon:cpp/container//title) [edit]
zwraca iterator na pierwszy element większy niż dany klucz
(publiczna metoda z Szablon:cpp/container//title) [edit]
zwraca iterator na pierwszy element nie mniejszy niż dany klucz
(publiczna metoda z Szablon:cpp/container//title) [edit]