Lookup¶
All methods in this section can be executed concurrently with each other, concurrently-safe modifiers, and while traversing the container.
count¶
size_type count( const key_type& key );Returns: the number of elements with the key equivalent to
key
.
template <typename K> size_type count( const K& key );Returns: the number of elements with the key that is equivalent to
key
.This overload only participates in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.
find¶
iterator find( const key_type& key ); const_iterator find( const key_type& key ) const;Returns: an iterator to the element with the key equivalent to
key
, orend()
if no such element exists.
template <typename K> iterator find( const K& key ); template <typename K> const_iterator find( const K& key ) const;Returns: an iterator to the element with the key equivalent to
key
, orend()
if no such element exists.These overloads only participate in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.
contains¶
bool contains( const key_type& key ) const;Returns:
true
if an element with the key equivalent tokey
exists in the container;false
, otherwise.
template <typename K> bool contains( const K& key ) const;Returns:
true
if an element with the key that is equivalent tokey
exists in the container;false
, otherwise.This overload only participates in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.
lower_bound¶
iterator lower_bound( const key_type& key ); const_iterator lower_bound( const key_type& key ) const;Returns: an iterator to the first element in the container with the key that is not less than
key
.
template <typename K> iterator lower_bound( const K& key ) template <typename K> const_iterator lower_bound( const K& key ) constReturns: an iterator to the first element in the container with the key that is not less than
key
.These overloads only participates in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.
upper_bound¶
iterator upper_bound( const key_type& key ); const_iterator upper_bound( const key_type& key ) const;Returns: an iterator to the first element in the container with the key that compares greater than
key
.
template <typename K> iterator upper_bound( const K& key ); template <typename K> const_iterator upper_bound( const K& key ) const;Returns: an iterator to the first element in the container with the key that compares
greater
thankey
.These overloads only participates in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.
equal_range¶
std::pair<iterator, iterator> equal_range( const key_type& key ); std::pair<const_iterator, const_iterator> equal_range( const key_type& key ) const;Returns: if an element with the key equivalent to
key
exists, a pair of iterators{f, l}
, wheref
is an iterator to this element,l
isstd::next(f)
. Otherwise,{end(), end()}
.
template <typename K> std::pair<iterator, iterator> equal_range( const K& key ) template <typename K> std::pair<const_iterator, const_iterator> equal_range( const K& key )Returns: if an element with the key that is equivalent to
key
exists, a pair of iterators{f, l}
, wheref
is an iterator to this element,l
isstd::next(f)
. Otherwise,{end(), end()}
.These overloads only participate in overload resolution if qualified-id
key_compare::is_transparent
is valid and denotes a type.