Condividi tramite


unordered_set::unordered_set

Costruisce un oggetto contenitore.

unordered_set(
    const unordered_set& Right
);
explicit unordered_set(
    size_type bucket_count = N0,
    const Hash& Hash = Hash(),
    const Comp& Comp = Comp(),
    const Allocator& Al = Alloc()
);
unordered_set(
    unordered_set&& Right
);
unordered_set(
    initializer_list<Type> IList
);
unordered_set(
    initializer_list<Type> 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 Comp& Comp
);
unordered_set(
    initializer_list<Type> IList, 
    size_type bucket_count,
    const Hash& Hash,
    const Comp& Comp,
    const Allocator& Al
);
template<class InputIterator>
    unordered_set(
    InputIterator first, 
    InputIterator last,
    size_type bucket_count = N0,
    const Hash& Hash = Hash(),
    const Comp& Comp = Comp(),
    const Allocator& Al = Alloc());

Parametri

Parametro

Descrizione

InputIterator

Il tipo di iteratore.

Al

L'oggetto allocatore da memorizzare.

Comp

L'oggetto della funzione di confronto da memorizzare.

Hash

L'oggetto di funzione hash da memorizzare.

bucket_count

Il numero minimo dei bucket.

Right

Il contenitore da copiare.

IList

L'initializer_list contenente gli elementi da copiare.

Note

Il primo costruttore specifica una copia della sequenza controllato da Right. Il secondo costruttore specifica una sequenza controllata vuota. Il terzo costruttore specifica una copia della sequenza spostando Right I costruttori dal quarto all'ottavo usano una initializer_list per specificare gli elementi da copiare. Il nono costruttore inserisce la sequenza di valori degli elementi [first, last).

Tutti i costruttori inizializzano anche diversi valori archiviati. Per il costruttore copia, i valori vengono ottenuti da Right. In caso contrario:

Il numero minimo dei bucket è l'argomento bucket_count, se disponibile; in caso contrario è un valore predefinito qui descritto come valore definito a livello implementativo N0.

L'oggetto di funzione hash è l'argomento Hash, se disponibile; in caso contrario è Hash().

L'oggetto di funzione di confronto è l'argomento Comp, se disponibile; in caso contrario è Comp().

L'oggetto allocatore è l'argomento Al, se disponibile; in caso contrario, è Alloc().

Esempio 

Codice

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

using namespace std;

typedef unordered_set<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{ { 'a', 'b', 'c' } };

    for (auto& c : c5){
        cout << " [" << c << "]";
    }
    cout << endl;
}

Output

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

Requisiti

Intestazione: <unordered_set>

Spazio dei nomi: std

Vedere anche

Riferimenti

<unordered_set>

Classe unordered_set

Altre risorse

<unordered_set> membri