hash_set::hash_set
Hinweis
Diese API ist veraltet.Die Alternative ist unordered_set-Klasse.
Erstellt ein hash_set-Element, das leer oder die Kopie eines ganzen anderen hash_set-Elements oder eines Teils davon ist.
hash_set( );
explicit hash_set(
const Traits& Comp
);
hash_set(
const Traits& Comp,
const Allocator& Al
);
hash_set(
const hash_set<Key, Traits, Allocator>& Right
);
hash_set(
hash_set&& Right
);
hash_set(
initializer_list<Type> IList
);
hash_set(
initializer_list<Type> IList,
const Compare& Comp
);
hash_set(
initializer_list<value_type> IList,
const Compare& Comp,
const Allocator& Al
);
template<class InputIterator>
hash_set(
InputIterator First,
InputIterator Last
);
template<class InputIterator>
hash_set(
InputIterator First,
InputIterator Last,
const Traits& Comp
);
template<class InputIterator>
hash_set(
InputIterator First,
InputIterator Last,
const Traits& Comp,
const Allocator& Al
);
Parameter
Parameter |
Beschreibung |
Al |
Die für dieses hash_set-Objekt zu verwendende Speicherzuweisungsklasse, dessen Standard Allocator ist. |
Comp |
Die Vergleichsfunktion vom Typ const Traits, die verwendet wird, um die Elemente in hash_set, deren Standard hash_compare ist, zu sortieren. |
Right |
Das hash_set-Element, von dem das erstellte hash_set-Element eine Kopie sein soll. |
First |
Die Position des ersten Elements in dem zu kopierenden Elementbereich. |
Last |
Die Position des ersten Elements nach dem zu kopierenden Elementbereich. |
Hinweise
Alle Konstruktoren speichern den Typ eines Zuweisungsobjekts, mit dem Arbeitsspeicherspeicher für hash_set verwaltet wird, und der später zurückgegeben werden kann, indem hash_set::get_allocator aufgerufen wird. Der Zuweisungsparameter wird häufig aus den Klassendeklarationen und den Vorverarbeitungsmakros weggelassen, die zum Ersetzen alternativer Zuweisungen verwendet werden.
Alle Konstruktoren initialisieren die hash_set-Elemente.
Alle Konstruktoren speichern ein Funktionsobjekt vom Typ Traits, das verwendet wird, um unter den Schlüsseln von hash_set eine Reihenfolge zu erstellen und das später zurückgegeben werden kann, indem hash_set::key_comp aufgerufen wird. Weitere Informationen zu Traits finden Sie im Thema hash_set-Klasse.
Der erste Konstruktor erstellt ein leeres ursprüngliches hash_set-Element. Der Zweite gibt den Typ der Vergleichsfunktion (Comp) an, die zum Angeben der Reihenfolge der Elemente verwendet wird, und der Dritte gibt explizit den zu verwendenden Zuweisungstyp (Al) an. Mit dem Schlüsselwort explicit werden bestimmte Arten automatischer Typumwandlung unterdrückt.
Der vierte und fünfte Konstruktor gibt eine Kopie von hash_set Right an.
Der sechste, siebte und achte Konstruktor verwendet ein initializer_list-Element für die Elemente.
Mit dem letzten Konstruktor wird der Bereich (First, Last) eines hash_set-Elements kopiert, wobei sich die Explizitheit bei Angabe des Typs der Vergleichsfunktion der Klasse "Traits" und "allocator" erhöht.
Der achte Konstruktor verschiebt hash_set Right.
Die tatsächliche Reihenfolge der Elemente in einem hash_set-Container hängt von der Hashfunktion, von der Sortierfunktion und der aktuellen Größe der Hashtabelle ab und kann im Allgemeinen nicht vorausgesagt werden, wie das beim festgelegten Container der Fall wäre, bei dem sie von der Sortierfunktion allein bestimmt würde.
Anforderungen
Header: <hash_set>
Namespace: stdext