<set> – funkce

swap (set)

Vymění prvky dvou sad.

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

Parametry

Vpravo
Sada poskytující prvky, které mají být prohozeny, nebo množinu, jejíž prvky se mají vyměňovat s prvky zleva.

Vlevo
Sada, jejíž prvky se mají vyměňovat s prvky zprava sady.

Poznámky

Funkce šablony je algoritmus specializovaný na třídu kontejneru nastavenou pro spuštění prohození členské funkceleft.(right). Jedná se o instanci částečného řazení šablon funkcí kompilátorem. Pokud jsou funkce šablony přetíženy takovým způsobem, že shoda šablony s voláním funkce není jedinečná, kompilátor vybere nejspecializovaných verzí funkce šablony. Obecná verze funkce šablony

template < classT>void swap( T&; T&&)

ve třídě algoritmu funguje podle přiřazení a je to pomalá operace. Specializovaná verze v každém kontejneru je mnohem rychlejší, protože dokáže pracovat s interní reprezentací třídy kontejneru.

Příklad

Podívejte se na příklad kódu pro člen třídy set::swap příklad použití verze šablony swap.

swap (multiset)

Vymění prvky dvou sad.

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

Parametry

Vpravo
Multiset poskytující prvky, které mají být prohozeny, nebo více sad, jejichž prvky se mají vyměňovat s prvky zleva.

Vlevo
Multiset, jejíž prvky se mají vyměňovat s prvky zprava multiset.

Poznámky

Funkce šablony je algoritmus specializovaný na multiset třídy kontejneru pro spuštění prohození členské funkceleft. Jedná se o instanci částečného řazení šablon funkcí kompilátorem. Pokud jsou funkce šablony přetíženy takovým způsobem, že shoda šablony s voláním funkce není jedinečná, kompilátor vybere nejspecializovaných verzí funkce šablony. Obecná verze funkce šablony

template < classT>void swap( T&; T&&)

ve třídě algoritmu funguje podle přiřazení a je to pomalá operace. Specializovaná verze v každém kontejneru je mnohem rychlejší, protože dokáže pracovat s interní reprezentací třídy kontejneru.

Příklad

Příklad kódu pro multiset členské třídy::swap příklad použití verze swapšablony .