Compartilhar via


Funções <hash_set>

troca
swap (hash_multiset)

troca

Observação

Esta API está obsoleta. A alternativa é a Classe unordered_set.

Troca os elementos de dois hash_sets.

void swap(
    hash_set <Key, Traits, Allocator>& left,
    hash_set <Key, Traits, Allocator>& right);

Parâmetros

direita
O hash_set que fornece os elementos a serem trocados ou o hash_set cujos elementos deverão ser trocados pelos do hash_set left.

esquerda
O hash_set cujos elementos serão trocados por aqueles do hash_set right.

Comentários

A função de modelo swap é um algoritmo especializado na classe de contêiner hash_set para executar a função de membro left.swap(right). Trata-se de uma instância da ordenação parcial de modelos de função pelo compilador. Quando as funções de modelo são sobrecarregadas de forma que a correspondência do modelo com a chamada de função não é exclusiva, o compilador seleciona a versão mais especializada do modelo de função. A versão geral da função de modelo

modelo <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, uma vez que ela pode funcionar com a representação interna da classe de contêiner.

Exemplo

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

swap (hash_multiset)

Observação

Esta API está obsoleta. A alternativa é a Classe unordered_set.

Troca os elementos de dois hash_multisets.

void swap(hash_multiset <Key, Traits, Allocator>& left, hash_multiset <Key, Traits, Allocator>& right);

Parâmetros

direita
O hash_multiset que fornece os elementos a serem trocados ou o hash_multiset cujos elementos deverão ser trocados pelos do hash_multiset left.

esquerda
O hash_multiset cujos elementos serão trocados por aqueles do hash_multiset right.

Comentários

A função de modelo swap é um algoritmo especializado na classe de contêiner hash_multiset para executar a função de membro left.swap(right). Trata-se de uma instância da ordenação parcial de modelos de função pelo compilador. Quando as funções de modelo são sobrecarregadas de forma que a correspondência do modelo com a chamada de função não é exclusiva, o compilador seleciona a versão mais especializada do modelo de função. A versão geral da função de modelo

modelo <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, uma vez que ela pode funcionar com a representação interna da classe de contêiner.

Exemplo

Veja o exemplo de código da classe de membro hash_multiset::swap para obter um exemplo que usa a versão de modelo do swap.

Confira também

<hash_set>