<map>
, funkcje
swap (mapa)
Zamienia elementy z dwóch map.
template <class key, class T, class _Pr, class _Alloc>
void swap(
map<Key, Traits, Compare, Alloctor>& left,
map<Key, Traits, Compare, Alloctor>& right);
Parametry
Prawy
Mapa przedstawiająca elementy do zamiany lub mapę, której elementy mają być wymieniane z elementami mapy po lewej stronie.
Lewy
Mapa, której elementy mają być wymieniane z prawymi elementami mapy.
Uwagi
Funkcja szablonu jest algorytmem wyspecjalizowanym na mapie klas kontenera w celu wykonania funkcji left
składowej .swap( right
). Jest to wystąpienie częściowego porządkowania szablonów funkcji przez kompilator. Gdy funkcje szablonu są przeciążone w taki sposób, że dopasowanie szablonu z wywołaniem funkcji nie jest unikatowe, kompilator wybierze najbardziej wyspecjalizowaną wersję funkcji szablonu. Ogólna wersja funkcji szablonu, template
<zamiana T void(> T&, T&), w klasie algorytmu działa według przypisania i jest powolną operacją. Wyspecjalizowana wersja w każdym kontenerze jest znacznie szybsza, ponieważ może współpracować z wewnętrzną reprezentacją klasy kontenera.
Przykład
Zobacz przykładowy kod funkcji składowej map::swap, aby zapoznać się z przykładem, który używa wersji szablonu .swap
swap (multimap)
Wymienia elementy dwóch map wielomap.
template <class key, class T, class _Pr, class _Alloc>
void swap(
multimap<Key, Traits, Compare, Alloctor>& left,
multimap<Key, Traits, Compare, Alloctor>& right);
Parametry
Prawy
Mapa wielomapowa zapewniająca zamianę elementów lub wielomapę, której elementy mają być wymieniane z elementami z lewej mapy wielomapowej.
Lewy
Mapa wielomapowa, której elementy mają być wymieniane z prawem mapy wielomapowej.
Uwagi
Funkcja szablonu jest algorytmem wyspecjalizowanym na mapie klas kontenerów do wykonania na wielomapie klasy kontenera w celu wykonania funkcji left
składowej .swap (right
). Jest to wystąpienie częściowego porządkowania szablonów funkcji przez kompilator. Gdy funkcje szablonu są przeciążone w taki sposób, że dopasowanie szablonu z wywołaniem funkcji nie jest unikatowe, kompilator wybierze najbardziej wyspecjalizowaną wersję funkcji szablonu. Ogólna wersja funkcji szablonu, template
<zamiana T void(> T&, T&), w klasie algorytmu działa według przypisania i jest powolną operacją. Wyspecjalizowana wersja w każdym kontenerze jest znacznie szybsza, ponieważ może współpracować z wewnętrzną reprezentacją klasy kontenera.
Przykład
Zobacz przykład kodu funkcji składowej multimap::swap, aby zapoznać się z przykładem korzystającym z wersji szablonu .swap