Freigeben über


hash_set::hash_set (STL/CLR)

Erstellt ein Containerobjekt.

    hash_set();
    explicit hash_set(key_compare^ pred);
    hash_set(key_compare^ pred, hasher^ hashfn);
    hash_set(hash_set<Key>% right);
    hash_set(hash_set<Key>^ right);
    template<typename InIter>
        hash_sethash_set(InIter first, InIter last);
    template<typename InIter>
        hash_set(InIter first, InIter last,
            key_compare^ pred);
    template<typename InIter>
        hash_set(InIter first, InIter last,
            key_compare^ pred, hasher^ hashfn);
    hash_set(System::Collections::Generic::IEnumerable<GValue>^ right);
    hash_set(System::Collections::Generic::IEnumerable<GValue>^ right,
        key_compare^ pred);
    hash_set(System::Collections::Generic::IEnumerable<GValue>^ right,
        key_compare^ pred, hasher^ hashfn);

Parameter

  • first
    Starten des Bereichs eingefügt werden soll.

  • hashfn
    Hashfunktion für die Zuordnung von Buckets mit den Schlüsseln.

  • last
    Ende des Bereichs eingefügt werden soll.

  • pred
    Aufträge prädikat für die gesteuerte Sequenz.

  • right
    Objekt oder einen Bereich zur Einfügung.

Hinweise

Der Konstruktor:

hash_set();

initialisiert die gesteuerte Sequenz Elemente ohne Bestellungen mit dem Standard- prädikat key_compare() und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um eine leere Sequenz, die ursprüngliche gesteuerte prädikat Bestellungen mit dem Standard- und - Hashfunktion anzugeben.

Der Konstruktor:

explicit hash_set(key_compare^ pred);

initialisiert die gesteuerte Sequenz ohne Elemente mit den Bestellungen prädikat pred und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um eine leere Sequenz, die ursprüngliche gesteuerte Bestellungen mit dem angegebenen prädikat und der standardmäßige Hashfunktion anzugeben.

Der Konstruktor:

hash_set(key_compare^ pred, hasher^ hashfn);

initialisiert die gesteuerte Sequenz ohne Elemente mit den Bestellungen prädikat pred und mit der Hashfunktion hashfn.Sie verwenden sie, um eine leere Sequenz, die ursprüngliche gesteuerte Bestellungen mit dem angegebenen prädikat und - Hashfunktion anzugeben.

Der Konstruktor:

hash_set(hash_set<Key>% right);

initialisiert die gesteuerte Sequenz mit der Sequenz [right.hash_set::begin (STL/CLR)(),right.hash_set::end (STL/CLR)()), mit dem standardmäßigen prädikat Bestellungen und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um eine ursprüngliche gesteuerte Sequenz angibt, die eine Kopie der Sequenz enthalten ist, die vom hash_set Objekt right, mit dem standardmäßigen prädikat Bestellungen und - Hashfunktion gesteuert wird.

Der Konstruktor:

hash_set(hash_set<Key>^ right);

initialisiert die gesteuerte Sequenz mit der Sequenz [right->hash_set::begin (STL/CLR)(),right->hash_set::end (STL/CLR)()), mit dem standardmäßigen prädikat Bestellungen und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um eine ursprüngliche gesteuerte Sequenz angibt, die eine Kopie der Sequenz enthalten ist, die vom hash_set Objekt right, mit dem standardmäßigen prädikat Bestellungen und - Hashfunktion gesteuert wird.

Der Konstruktor:

template<typename InIter>

hash_set(InIter first, InIter last);

initialisiert die gesteuerte Sequenz mit der Sequenz [first,last), mit dem standardmäßigen prädikat Bestellungen und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz, mit dem standardmäßigen prädikat Bestellungen und - Hashfunktion zu erstellen.

Der Konstruktor:

template<typename InIter>

hash_set(InIter first, InIter last,

key_compare^ pred);

initialisiert die gesteuerte Sequenz mit der Sequenz [first,last), mit dem prädikat Bestellungen pred und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz mit den Angaben prädikat Bestellungen und der standardmäßige Hashfunktion zu erstellen.

Der Konstruktor:

template<typename InIter>

hash_set(InIter first, InIter last,

key_compare^ pred, hasher^ hashfn);

initialisiert die gesteuerte Sequenz mit der Sequenz [first,last), mit dem prädikat Bestellungen pred und mit der Hashfunktion hashfn.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz mit den Angaben prädikat Bestellungen und - Hashfunktion zu erstellen.

Der Konstruktor:

hash_set(System::Collections::Generic::IEnumerable<Key>^ right);

initialisiert die gesteuerte Sequenz mit der Sequenz, die der Enumerator gesetzt wurde, right Bestellungen mit dem Standard- prädikat und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz zu erstellen, die von einem Enumerator, mit dem standardmäßigen prädikat Bestellungen und - Hashfunktion beschrieben wird.

Der Konstruktor:

hash_set(System::Collections::Generic::IEnumerable<Key>^ right,

key_compare^ pred);

initialisiert die gesteuerte Sequenz mit der Sequenz, die der Enumerator gesetzt wurde, right prädikat Aufträge mit dem pred und mit der standardmäßigen Hashfunktion.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz zu erstellen, die von einem Enumerator, mit dem angegebenen Standardwert und Bestellungen prädikat- hashfunktion beschrieben wird.

Der Konstruktor:

hash_set(System::Collections::Generic::IEnumerable<Key>^ right,

key_compare^ pred, hasher^ hashfn);

initialisiert die gesteuerte Sequenz mit der Sequenz, die der Enumerator gesetzt wurde, right prädikat Aufträge mit dem pred und mit der Hashfunktion hashfn.Sie verwenden sie, um die gesteuerte Sequenz eine Kopie von einer anderen Sequenz zu erstellen, die von einem Enumerator, mit dem angegebenen prädikat Bestellungen und - Hashfunktion beschrieben wird.

Beispiel

// cliext_hash_set_construct.cpp 
// compile with: /clr 
#include <cliext/hash_set> 
 
int myfun(wchar_t key) 
    { // hash a key 
    return (key ^ 0xdeadbeef); 
    } 
 
typedef cliext::hash_set<wchar_t> Myhash_set; 
int main() 
    { 
// construct an empty container 
    Myhash_set c1; 
    System::Console::WriteLine("size() = {0}", c1.size()); 
 
    c1.insert(L'a'); 
    c1.insert(L'b'); 
    c1.insert(L'c'); 
    for each (wchar_t elem in c1) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an ordering rule 
    Myhash_set c2 = cliext::greater_equal<wchar_t>(); 
    System::Console::WriteLine("size() = {0}", c2.size()); 
 
    c2.insert(c1.begin(), c1.end()); 
    for each (wchar_t elem in c2) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an ordering rule and hash function 
    Myhash_set c2h(cliext::greater_equal<wchar_t>(), 
        gcnew Myhash_set::hasher(&myfun)); 
    System::Console::WriteLine("size() = {0}", c2h.size()); 
 
    c2h.insert(c1.begin(), c1.end()); 
    for each (wchar_t elem in c2h) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    System::Console::WriteLine(); 
 
// construct with an iterator range 
    Myhash_set c3(c1.begin(), c1.end()); 
    for each (wchar_t elem in c3) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an iterator range and an ordering rule 
    Myhash_set c4(c1.begin(), c1.end(), 
        cliext::greater_equal<wchar_t>()); 
    for each (wchar_t elem in c4) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an iterator range and an ordering rule and hash function 
    Myhash_set c4h(c1.begin(), c1.end(), 
        cliext::greater_equal<wchar_t>(), 
        gcnew Myhash_set::hasher(&myfun)); 
    for each (wchar_t elem in c4h) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    System::Console::WriteLine(); 
 
// construct with an enumeration 
    Myhash_set c5(   // NOTE: cast is not needed 
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c3); 
    for each (wchar_t elem in c5) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an enumeration and an ordering rule 
    Myhash_set c6(   // NOTE: cast is not needed 
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c3, 
            cliext::greater_equal<wchar_t>()); 
    for each (wchar_t elem in c6) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct with an enumeration and an ordering rule and hash function 
    Myhash_set c6h(   // NOTE: cast is not needed 
        (System::Collections::Generic::IEnumerable<wchar_t>^)%c3, 
            cliext::greater_equal<wchar_t>(), 
                gcnew Myhash_set::hasher(&myfun)); 
    for each (wchar_t elem in c6h) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    System::Console::WriteLine(); 
 
// construct from a generic container 
    Myhash_set c7(c4); 
    for each (wchar_t elem in c7) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
 
// construct by copying another container 
    Myhash_set c8(%c3); 
    for each (wchar_t elem in c8) 
        System::Console::Write(" {0}", elem); 
    System::Console::WriteLine(); 
    return (0); 
    } 
 
  

Anforderungen

Header: <cliext/hash_set>

Namespace: cliext

Siehe auch

Referenz

hash_set (STL/CLR)

hash_set::generic_container (STL/CLR)

hash_set::operator= (STL/CLR)