Compartilhar via


unordered_map::unordered_map

Constrói um objeto de contêiner.

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());

Parâmetros

  • InIt
    O tipo de iterador.

  • al
    O objeto alocador armazenar.

  • comp
    O objeto de função de comparação para armazenar.

  • hfn
    O objeto de função de hash para armazenar.

  • nbuckets
    O número mínimo de compartimentos de memória.

  • right
    O contêiner para copiar.

Comentários

O primeiro construtor Especifica uma cópia da sequência controlada por right. O segundo construtor Especifica uma sequência vazia controlada.O terceiro construtor insere a sequência de valores de elemento [first, last).

Todos os construtores também inicializar vários valores armazenados.Para o construtor de cópia, os valores são obtidos de right. Caso contrário:

o número mínimo de compartimentos de memória é o argumento nbuckets, se presente; caso contrário é um valor padrão descrito aqui sistema autônomo o valor definido para implementação N0.

o objeto de função hash é o argumento hfn, se presente; caso contrário é Hash().

o objeto de função de comparação é o argumento comp, se presente; caso contrário é Pred().

o objeto alocador é o argumento al, se presente; caso contrário, é Alloc().

Exemplo

 

// std_tr1__unordered_map__unordered_map_construct.cpp 
// compile with: /EHsc 
#include <unordered_map> 
#include <iostream> 
 
typedef std::tr1::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; 
 
    return (0); 
    } 
 
 [c, 3] [b, 2] [a, 1]  [f, 6] [e, 5] [d, 4]  [c, 3] [b, 2] [a, 1]

Requisitos

Cabeçalho:<unordered_map>

Namespace: std::tr1

Consulte também

Referência

<unordered_map>

Classe unordered_map