Sdílet prostřednictvím


unordered_set::unordered_set

Vytvoří objekt kontejneru.

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

Parametry

Parametr

Popis

InputIterator

Typ iterátoru.

Al

Objekt Alokátor ukládat.

Comp

Porovnání funkce objekt uložit.

Hash

Objekt hash funkce pro ukládání.

bucket_count

Minimální počet bloků.

Right

Kontejner, který chcete kopírovat.

IList

Initializer_list, obsahující prvky, které chcete zkopírovat.

Poznámky

První konstruktoru určuje kopírování sekvence řízena Right.Druhý konstruktor určuje řízené sekvenci prázdné.Třetí konstruktor určuje kopírování sekvence přesunutím Right čtvrtý až osmý konstruktory initializer_list slouží k určení prvků, které chcete zkopírovat.Pořadí hodnot prvků vloží deváté konstruktor [first, last).

Všechny konstruktory inicializovat také několik uložené hodnoty.Kopírovat konstruktor, hodnoty jsou získány z Right.V ostatních případech:

Minimální počet bloků je argument bucket_count, pokud je k dispozici; v opačném případě je výchozí hodnoty popsané jako hodnoty definované implementací N0.

Argument je objekt hash funkce Hash, pokud je k dispozici; jinak by se Hash().

Porovnání funkce objektu je argument Comp, pokud je k dispozici; jinak by se Comp().

Argument je objekt Alokátor Al, pokud je k dispozici; jinak je Alloc().

Příklad 

Kód

/ 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;
}

Výsledek

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

Požadavky

Záhlaví:<unordered_set>

Obor názvů: std

Viz také

Referenční dokumentace

<unordered_set>

unordered_set – třída

Další zdroje

<unordered_set> Členové