Dela via


<map> funktioner

swap (karta)

Utbyter elementen i två kartor.

template <class key, class T, class _Pr, class _Alloc>
void swap(
    map<Key, Traits, Compare, Allocator>& left,
    map<Key, Traits, Compare, Allocator>& right);

Parameterar

rätt
Kartan som tillhandahåller de element som ska bytas ut, eller den karta vars element ska bytas ut med dem på kartan till vänster.

vänster
Kartan vars element ska bytas ut mot kartans högra.

Anmärkningar

Mallfunktionen är en algoritm som är specialiserad på containerklasskartan för att köra medlemsfunktionen left.swap(right). Det här är en instans av kompilatorns partiella ordning av funktionsmallar. När mallfunktioner överbelastas på ett sådant sätt att matchningen av mallen med funktionsanropet inte är unik väljer kompilatorn den mest specialiserade versionen av mallfunktionen. Den allmänna versionen av mallfunktionen, template<T>void swap(T&, T&), i algoritmklassen fungerar efter tilldelning och är en långsam åtgärd. Den specialiserade versionen i varje container går mycket snabbare eftersom den kan fungera med den interna representationen av containerklassen.

Exempel

Se kodexemplet för medlemsfunktionen map::swap för ett exempel som använder mallversionen av swap.

swap (multimap)

Utbyter elementen i två multikartor.

template <class key, class T, class _Pr, class _Alloc>
void swap(
    multimap<Key, Traits, Compare, Allocator>& left,
    multimap<Key, Traits, Compare, Allocator>& right);

Parameterar

rätt
Multimappen som tillhandahåller de element som ska bytas ut, eller den multimapp vars element ska bytas ut med elementen i multimappen till vänster.

vänster
Multimappen vars element ska bytas ut med multimapps-högern.

Anmärkningar

Mallfunktionen är en algoritm som är specialiserad på containerklasskartan som ska köras på containerklassens multimapp för att köra medlemsfunktionen left.swap (right). Det här är en instans av kompilatorns partiella ordning av funktionsmallar. När mallfunktioner överbelastas på ett sådant sätt att matchningen av mallen med funktionsanropet inte är unik väljer kompilatorn den mest specialiserade versionen av mallfunktionen. Den allmänna versionen av mallfunktionen, template<T>void swap(T&, T&), i algoritmklassen fungerar efter tilldelning och är en långsam åtgärd. Den specialiserade versionen i varje container går mycket snabbare eftersom den kan fungera med den interna representationen av containerklassen.

Exempel

Se kodexemplet för medlemsfunktionen multimap::swap för ett exempel som använder mallversionen av swap.