Compartilhar via


unordered_multiset::unordered_multiset

Cria um objeto contêiner.

unordered_multiset(
    const unordered_multiset& Right
);
explicit unordered_multiset(
    size_type Bucket_count = N0,
    const Hash& Hash = Hash(),
    const Comp& Comp = Comp(),
    const Allocator& Al = Alloc()
);
unordered_multiset(
    unordered_multiset&& Right
);
unordered_set(
    initializer_list<Type> IList
);
unordered_set(
    initializer_list<Typ > IList,
    size_type Bucket_count
);
unordered_set(
    initializer_list<Type> IList, 
    size_type Bucket_count, 
    const Hash& Hash
); 
unordered_set(
    initializer_list<Type> IList, 
    size_type Bucket_count, 
    const Hash& Hash, 
    const Key& Key
);
unordered_set(
    initializer_list<Type> IList, 
    size_type Bucket_count, 
    const Hash& Hash, 
    const Key& Key, 
    const Allocator& Al
);
template<class InputIterator>
    unordered_multiset(
        InputIterator First, 
        InputIterator Last,
        size_type Bucket_count = N0,
        const Hash& Hash = Hash(),
        const Comp& Comp = Comp(),
        const Allocator& Al = Alloc()
    );

Parâmetros

Parâmetro

Descrição

InputIterator

O tipo de iterador.

Al

O objeto do alocador no repositório.

Comp

O objeto da função de comparação no repositório.

Hash

O objeto de função de hash para o repositório.

Bucket_count

O número mínimo de blocos.

Right

O contêiner a ser copiada.

IList

O initializer_list da qual 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 [First, Last)do elemento. O quarto construtor especifica uma cópia da sequência movendo Right.

Todos os construtores também iniciar vários valores armazenados. Para o construtor de impressão, os valores são obtidos de Right. Se não:

O número mínimo de recipientes é o argumento Bucket_count, se presente; se não for um valor padrão descrito aqui porque o valor de implementação definido N0.

O objeto de função de hash é o argumento Hash, se presente; se não for Hash().

O objeto da função de comparação é o argumento Comp, se presente; se não for Comp().

O objeto do alocador é o argumento Al, se presente; caso contrário, será Alloc().

Exemplo 

Código

/ std_tr1__unordered_set__unordered_multiset_construct.cpp 
// compile with: /EHsc 
#include <unordered_set> 
#include <iostream> 

using namespace std;

typedef unordered_multiset<char> Myset;

int main()
{
    Myset c1;

    c1.insert('a');
    c1.insert('b');
    c1.insert('c');

    // display contents " [c] [b] [a]" 
    for (auto& c : c1) {
        cout << " [" << c << "]";
    }
    cout << endl;

    Myset c2(8,
        hash<char>(),
        equal_to<char>(),
        allocator<pair<const char, int> >());

    c2.insert('d');
    c2.insert('e');
    c2.insert('f');

    // display contents " [f] [e] [d]" 
    for (auto& c : c2) {
        cout << " [" << c << "]";
    }
    cout << endl;

    Myset c3(c1.begin(),
        c1.end(),
        8,
        hash<char>(),
        equal_to<char>(),
        allocator<pair<const char, int> >());

    // display contents " [c] [b] [a]" 
    for (auto& c : c3) {
        cout << " [" << c << "]";
    }
    cout << endl;

    Myset c4(move(c3));

    // display contents " [c] [b] [a]" 
    for (auto& c : c4) {
        cout << " [" << c << "]";
    }
    cout << endl;

    Myset c5{ { 'g', 'h' } };
    for (auto& c : c5) {
        cout << " [" << c << "]";
    }
    cout << endl;
}
// std_tr1__unordered_set__unordered_multiset_construct.cpp 
// compile with: /EHsc 
#include <unordered_set> 
#include <iostream> 
 
typedef std::unordered_multiset<char> Myset; 
int main() 
    { 
    Myset c1; 
 
    c1.insert('a'); 
    c1.insert('b'); 
    c1.insert('c'); 
 
// display contents " [c] [b] [a]" 
    for (Myset::const_iterator it = c1.begin(); 
        it != c1.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    Myset c2(8, 
        std::hash<char>(), 
        std::equal_to<char>(), 
        std::allocator<std::pair<const char, int> >()); 
 
    c2.insert('d'); 
    c2.insert('e'); 
    c2.insert('f'); 
 
// display contents " [f] [e] [d]" 
    for (Myset::const_iterator it = c2.begin(); 
        it != c2.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    Myset c3(c1.begin(), 
        c1.end(), 
        8, 
        std::hash<char>(), 
        std::equal_to<char>(), 
        std::allocator<std::pair<const char, int> >()); 
 
// display contents " [c] [b] [a]" 
    for (Myset::const_iterator it = c3.begin(); 
        it != c3.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 
 
    Myset c4(std::move(c3));

// display contents " [c] [b] [a]" 
    for (Myset::const_iterator it = c3.begin(); 
        it != c3.end(); ++it) 
        std::cout << " [" << *it << "]"; 
    std::cout << std::endl; 

    return (0); 
    } 
 

Saída

[a] [b] [c]
 [d] [e] [f]
 [a] [b] [c]
 [a] [b] [c]
 [g] [h]

Requisitos

unordered_set <deCabeçalho: >

Namespace: std

Consulte também

Referência

<unordered_set>

Classe unordered_multiset

Outros recursos

<unordered_set> Membros