Partilhar via


<map> funções

swap (mapa)

Troca os elementos de dois mapas.

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

Parâmetros

direito
O mapa que fornece os elementos a serem trocados, ou o mapa cujos elementos devem ser trocados com os do mapa à esquerda.

esquerda
O mapa cujos elementos devem ser trocados com os do mapa à direita.

Observações

A função de modelo é um algoritmo especializado no mapa de classe de contêiner para executar a função leftde membro.swap(right). Esta é uma instância da ordenação parcial de modelos de função pelo compilador. Quando as funções de modelo estão sobrecarregadas de tal forma que a correspondência do modelo com a chamada de função não é exclusiva, então o compilador selecionará a versão mais especializada da função de modelo. A versão geral da função de modelo, template<classe T>void swap( T&, T&), na classe de algoritmo funciona por atribuição e é uma operação lenta. A versão especializada em cada contêiner é muito mais rápida, pois pode trabalhar com a representação interna da classe de contêiner.

Exemplo

Consulte o exemplo de código para member function map::swap para obter um exemplo que usa a versão de modelo do swap.

swap (multimapa)

Troca os elementos de dois multimapas.

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

Parâmetros

direito
O multimapa que fornece os elementos a serem trocados, ou o multimapa cujos elementos devem ser trocados com os do multimapa à esquerda.

esquerda
O multimapa cujos elementos devem ser trocados com os do direito multimapa.

Observações

A função de modelo é um algoritmo especializado no mapa de classe de contêiner para executar no multimapa de classe de contêiner para executar a função leftde membro.permuta (right). Esta é uma instância da ordenação parcial de modelos de função pelo compilador. Quando as funções de modelo estão sobrecarregadas de tal forma que a correspondência do modelo com a chamada de função não é exclusiva, então o compilador selecionará a versão mais especializada da função de modelo. A versão geral da função de modelo, template<classe T>void swap( T&, T&), na classe de algoritmo funciona por atribuição e é uma operação lenta. A versão especializada em cada contêiner é muito mais rápida, pois pode trabalhar com a representação interna da classe de contêiner.

Exemplo

Consulte o exemplo de código para a função de membro multimap::swap para obter um exemplo que usa a versão de modelo do swap.