Freigeben über


<set> -Funktionen

swap (set)

Tauscht die Elemente zweier Sätze aus.

template <class Key, class Traits, class Allocator>
void swap(set<Key, Traits, Allocator>& left, set<Key, Traits, Allocator>& right);

Parameter

right
Der Satz, der die zu tauschenden Elemente oder die Gruppe bereitstellt, deren Elemente mit denen des Satzes links ausgetauscht werden sollen.

left
Die Gruppe, deren Elemente mit denen des gesetzten Rechts ausgetauscht werden sollen.

Hinweise

Die Vorlagenfunktion ist ein Algorithmus, der auf die Containerklasse spezialisiert ist, 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

template<classT>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 set::swap finden Sie ein Beispiel für die Verwendung der Vorlagenversion swap.

swap (multiset)

Tauscht die Elemente zweier Multimengen aus.

template <class Key, class Traits, class Allocator>
void swap(multiset<Key, Traits, Allocator>& left, multiset<Key, Traits, Allocator>& right);

Parameter

right
Das Multiset, das die zu tauschenden Elemente oder das Multiset bereitstellt, dessen Elemente mit denen der Multimenge links ausgetauscht werden sollen.

left
Das Multiset, dessen Elemente mit denen des Multisets rechts ausgetauscht werden sollen.

Hinweise

Die Vorlagenfunktion ist ein Algorithmus, der auf das Multiset der Containerklasse spezialisiert ist, 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

template<classT>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 multiset::swap finden Sie ein Beispiel für die Verwendung der Vorlagenversion swap.