std::multimap<Key,T,Compare,Allocator>:: equal_range
|
std::
pair
<
iterator, iterator
>
equal_range
(
const
Key
&
key
)
;
|
(1) | (constexpr desde C++26) |
|
std::
pair
<
const_iterator, const_iterator
>
equal_range ( const Key & key ) const ; |
(2) | (constexpr desde C++26) |
|
template
<
class
K
>
std:: pair < iterator, iterator > equal_range ( const K & x ) ; |
(3) |
(desde C++14)
(constexpr desde C++26) |
|
template
<
class
K
>
std::
pair
<
const_iterator, const_iterator
>
|
(4) |
(desde C++14)
(constexpr desde C++26) |
Devuelve un rango que contiene todos los elementos con la clave dada en el contenedor. El rango está definido por dos iteradores, uno apuntando al primer elemento que no es menor que la clave dada y otro apuntando al primer elemento mayor que la clave dada.
Alternativamente, el primer iterador puede obtenerse con lower_bound() , y el segundo con upper_bound() .
Compare
es
transparent
. Permite llamar a esta función sin construir una instancia de
Key
.
Contenidos |
Parámetros
| key | - | valor clave para comparar los elementos |
| x | - |
valor alternativo que puede compararse con
Key
|
Valor de retorno
std::pair que contiene un par de iteradores que definen el rango deseado:
- El primer iterador apunta al primer elemento no menor que la clave dada, o end ( ) si no existe tal elemento.
- El segundo iterador apunta al primer elemento mayor que la clave dada, o end ( ) si no existe tal elemento.
|
Dado que
|
(desde C++11) |
Complejidad
Logarítmico en el tamaño del contenedor.
Notas
| Macro de prueba de características | Valor | Estándar | Característica |
|---|---|---|---|
__cpp_lib_generic_associative_lookup
|
201304L
|
(C++14) | Búsqueda de comparación heterogénea en contenedores asociativos , para sobrecargas ( 3,4 ) |
Ejemplo
#include <iostream> #include <map> int main() { std::multimap<int, char> dict { {1, 'A'}, {2, 'B'}, {2, 'C'}, {2, 'D'}, {4, 'E'}, {3, 'F'} }; auto range = dict.equal_range(2); for (auto i = range.first; i != range.second; ++i) std::cout << i->first << ": " << i->second << '\n'; }
Salida:
2: B 2: C 2: D
Véase también
|
encuentra elemento con clave específica
(función miembro pública) |
|
|
(C++20)
|
verifica si el contenedor contiene elemento con clave específica
(función miembro pública) |
|
devuelve el número de elementos que coinciden con clave específica
(función miembro pública) |
|
|
devuelve un iterador al primer elemento
mayor
que la clave dada
(función miembro pública) |
|
|
devuelve un iterador al primer elemento
no menor
que la clave dada
(función miembro pública) |
|
|
devuelve rango de elementos que coinciden con una clave específica
(plantilla de función) |