Compartir a través de


unordered_map::unordered_map

construye un objeto contenedor.

unordered_map(
    const unordered_map& right);
explicit unordered_map(
    size_type nbuckets = N0,
    const Hash& hfn = Hash(),
    const Pred& comp = Pred(),
    const Alloc& al = Alloc());
template<class InIt>
    unordered_map(
    InIt first, InIt last,
    size_type nbuckets = N0,
    const Hash& hfn = Hash(),
    const Pred& comp = Pred(),
    const Alloc& al = Alloc());
unordered_map(
    unordered_map&& right);

Parámetros

Parámetro

Descripción

InIt

El tipo del iterador.

al

El objeto de asignador el almacén.

comp

El objeto de la función de comparación al almacén.

hfn

El objeto de la función hash en el almacén.

nbuckets

el número mínimo de depósitos.

right

el contenedor a copiar.

Comentarios

el primer constructor especifica una copia de la secuencia controlada por right.el segundo constructor especifica una secuencia controlada vacía.El tercer constructor inserta la secuencia de valores [first, last)del elemento.el cuarto constructor especifica una copia de la secuencia moviendo right.

Todos los constructores también inicializan varios valores almacenados.Para el constructor de copias, los valores se obtienen de right.De lo contrario:

el número mínimo de depósitos es el argumento nbuckets, si está presente; si no es un valor predeterminado descrito aquí como valor implementación-definido N0.

el objeto de la función hash es el argumento hfn, si está presente; si no es Hash().

el objeto de la función de comparación es el argumento comp, si está presente; si no es Pred().

el objeto de asignador es el argumento al, si está presente; de lo contrario, es Alloc().

Ejemplo

 

// std_tr1__unordered_map__unordered_map_construct.cpp 
// compile with: /EHsc 
#include <unordered_map> 
#include <iostream> 

typedef std::unordered_map<char, int> Mymap; 
int main() 
    { 
    Mymap c1; 
 
    c1.insert(Mymap::value_type('a', 1)); 
    c1.insert(Mymap::value_type('b', 2)); 
    c1.insert(Mymap::value_type('c', 3)); 
 
// display contents " [c 3] [b 2] [a 1]" 
    for (Mymap::const_iterator it = c1.begin(); 
        it != c1.end(); ++it) 
        std::cout << " [" << it->first << ", " << it->second << "]"; 
    std::cout << std::endl; 
 
    Mymap c2(8, 
        std::tr1::hash<char>(), 
        std::equal_to<char>(), 
        std::allocator<std::pair<const char, int> >()); 
 
    c2.insert(Mymap::value_type('d', 4)); 
    c2.insert(Mymap::value_type('e', 5)); 
    c2.insert(Mymap::value_type('f', 6)); 
 
// display contents " [f 6] [e 5] [d 4]" 
    for (Mymap::const_iterator it = c2.begin(); 
        it != c2.end(); ++it) 
        std::cout << " [" << it->first << ", " << it->second << "]"; 
    std::cout << std::endl; 
 
    Mymap c3(c1.begin(), 
        c1.end(), 
        8, 
        std::tr1::hash<char>(), 
        std::equal_to<char>(), 
        std::allocator<std::pair<const char, int> >()); 
 
// display contents " [c 3] [b 2] [a 1]" 
    for (Mymap::const_iterator it = c3.begin(); 
        it != c3.end(); ++it) 
        std::cout << " [" << it->first << ", " << it->second << "]"; 
    std::cout << std::endl; 

    Mymap c4(std::move(c3));

// display contents " [c 3] [b 2] [a 1]" 
    for (Mymap::const_iterator it = c4.begin(); 
        it != c4.end(); ++it) 
        std::cout << " [" << it->first << ", " << it->second << "]"; 
    std::cout << std::endl; 
 
    return (0); 
    } 
 
  

Requisitos

encabezado: <unordered_map>

espacio de nombres: std

Vea también

Referencia

<unordered_map>

unordered_map Class

Otros recursos

miembros de <unordered_map>