<hash_set> -Funktionen

Der <hash_set> Header stellt die folgenden Funktionen bereit:

tauschen

Hinweis

Diese API ist veraltet. Die Alternative ist <unordered_set>. Dieser Header wurde in MSVC Build Tools 14.51 entfernt.

Tauscht die Elemente zweier hash_sets aus.

void swap(
    hash_set <Key, Traits, Allocator>& left,
    hash_set <Key, Traits, Allocator>& right);

Parameter

Rechts
Die hash_set die zu tauschenden Elemente oder die hash_set, deren Elemente mit denen der hash_set links ausgetauscht werden sollen.

Links
Die hash_set, deren Elemente mit denen des hash_set Rechts ausgetauscht werden sollen.

Hinweise

Die swap Vorlagenfunktion ist ein Algorithmus, der auf die Containerklasse spezialisiert ist hash_set, um den Memberfunktion left.swap(right) auszuführen. Dies ist eine Instanz der partiellen Reihenfolge von Funktionsvorlagen durch den Compiler. Wenn Vorlagenfunktionen so überladen werden, dass die Übereinstimmung der Vorlage mit dem Funktionsaufruf nicht eindeutig ist, wählt der Compiler die spezialisierteste Version der Vorlagenfunktion aus. Die allgemeine Version der Vorlagenfunktion

Vorlagenklasse <T void swap(T> &, T&),

in der Algorithmusklasse funktioniert mittels Zuweisung und ist ein langsamer Vorgang. Die spezialisierte Version in jedem Container ist viel schneller, da sie mit der internen Darstellung der Containerklasse genutzt werden kann.

Beispiel

Im Codebeispiel für die Memberklasse hash_set::swap finden Sie ein Beispiel, das die Vorlagenversion swap verwendet.

Swap (hash_multiset)

Hinweis

Diese API ist veraltet. Die Alternative ist unordered_set-Klasse.

Tauscht die Elemente zweier hash_multisets aus.

void swap(hash_multiset <Key, Traits, Allocator>& left, hash_multiset <Key, Traits, Allocator>& right);

Parameter

right
Die hash_multiset die zu tauschenden Elemente oder die hash_multiset, deren Elemente mit denen der hash_multiset leftausgetauscht werden sollen.

left
Die hash_multiset, deren Elemente mit denen der hash_multiset rightausgetauscht werden sollen.

Hinweise

Die swap Vorlagenfunktion ist ein Algorithmus, der auf die Containerklasse spezialisiert ist, hash_multiset die Memberfunktion left.swap(right) auszuführen. Diese Funktion veranschaulicht, wie der Compiler eine partielle Sortierung von Funktionsvorlagen verwendet. Wenn Vorlagenfunktionen überladen sind, damit die Übereinstimmung der Vorlage mit dem Funktionsaufruf nicht eindeutig ist, wählt der Compiler die spezialisierteste Version der Vorlagenfunktion aus. Die allgemeine Version der Vorlagenfunktion template <class T> void swap(T&, T&) in der Algorithmusklasse funktioniert nach Zuordnung und ist ein langsamer Vorgang. Die spezialisierte Version in jedem Container ist viel schneller, da sie mit der internen Darstellung der Containerklasse funktioniert.

Beispiel

Ein Beispiel, das die Vorlagenversion von swapverwendet, finden Sie im Codebeispiel für die Memberklasse hash_multiset::swap.

Siehe auch

<hash_set>