Descrição
A função C ++ std::unordered_map::swap() troca o conteúdo do primeiro unordered_map por outro.
Declaração
A seguir está a declaração do cabeçalho da função std :: unordered_map :: swap () std :: unordered_map.
C ++ 11
template <class Key, class T, class Hash, class Pred, class Alloc>
void swap( unordered_map<Key,T,Hash,Pred,Alloc>& first,
unordered_map<Key,T,Hash,Pred,Alloc>& second);
Parâmetros
Valor de retorno
Nenhum
Complexidade de tempo
Constante, ou seja, O (1)
Exemplo
O exemplo a seguir mostra o uso da função std :: unordered_map :: swap ().
#include <iostream>
#include <unordered_map>
using namespace std;
int main(void) {
unordered_map<char, int> um1 = {
{'a', 1},
{'b', 2},
{'c', 3},
{'d', 4},
{'e', 5}
};
unordered_map<char, int> um2;
swap(um1, um2);
cout << "Unordered map contains following elements" << endl;
for (auto it = um2.begin(); it != um2.end(); ++it)
cout << it->first << " = " << it->second << endl;
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
Unordered map contains following elements
e = 5
a = 1
b = 2
c = 3
d = 4