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 equivalent to
key.
template <typename K> size_type count( const K& key );Returns: the number of elements that are equivalent to
key.This overload only participates in overload resolution if qualified-id
key_compare::is_transparentis 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 equivalent to
keyorend()if no such element exists.If there are multiple elements equivalent to
key, it is unspecified which element should be found.
template <typename K> iterator find( const K& key ); template <typename K> const_iterator find( const K& key ) const;Returns: an iterator to the element that is equivalent to
key, orend()if no such element exists.If there are multiple elements that are equivalent to
key, it is unspecified which element should be found.These overloads only participate in overload resolution if qualified-id
key_compare::is_transparentis valid and denotes a type.
contains#
bool contains( const key_type& key ) const;Returns:
trueif at least one element equivalent tokeyexists in the container;false, otherwise.
template <typename K> bool contains( const K& key ) const;Returns:
trueif at least one element that is equivalent tokeyexists in the container;false, otherwise.This overload participates in overload resolution only if qualified-id
key_compare::is_transparentis 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 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 that is not less than
key.These overloads only participate in overload resolution if qualified-id
key_compare::is_transparentis 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 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 that compares
greaterthankey.These overloads participate in overload resolution only if qualified-id
key_compare::is_transparentis 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 at least one element equivalent to
keyexists, a pair of iterators{f, l}, wherefis an iterator to the first element equivalent tokey,lis an iterator to the element that follows the last element equivalent tokey. 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 at least one element that is equivalent to
keyexists, a pair of iterators{f, l},where
fis an iterator to the first element that is equivalent tokey,lis an iterator to the element that follows the last element that is equivalent tokey. Otherwise,{end(), end()}.These overloads participate in overload resolution only if qualified-id
key_compare::is_transparentis valid and denotes a type.