Biblioteca C ++ Unordered_map - função erase ()
Descrição
A função C ++ std::unordered_map::equal() retorna um intervalo de elementos que correspondem a uma chave específica.
Em contêineres unordered_map, onde as chaves são exclusivas, o intervalo incluirá um elemento no máximo. Se k não corresponder a nenhuma chave no contêiner, o intervalo retornado terá fim como seus limites de intervalo inferior e superior.
Declaração
A seguir está a declaração do cabeçalho da função std :: unordered_map :: equal () std :: unordered_map.
C ++ 11
pair<iterator,iterator> equal_range(const key_type& k);
pair<const_iterator,const_iterator> equal_range(const key_type& k) const;
Parâmetros
k - Chave a ser pesquisada.
Descrição
A função C ++ std::unordered_map::erase()remove um único elemento do unordered_map da posição .
Esta função de membro diminui o tamanho de unordered_map por um.
Declaração
A seguir está a declaração para o cabeçalho std :: unordered_map do formulário da função std :: unordered_map :: erase ().
C ++ 11
iterator erase(const_iterator position);
Parâmetros
position - Iterador para o elemento a ser removido.
Valor de retorno
Retorna um iterador apontando para a posição imediatamente após o último dos elementos apagados.
Complexidade de tempo
Constante, ou seja, O (1)
Exemplo
O exemplo a seguir mostra o uso da função std :: unordered_map :: erase ().
#include <iostream>
#include <unordered_map>
using namespace std;
int main(void) {
unordered_map<char, int> um = {
{'a', 1},
{'b', 2},
{'c', 3},
{'d', 4},
{'e', 5}
};
cout << "Unordered map contains following elements before erase operation"
<< endl;
for (auto it = um.begin(); it != um.end(); ++it)
cout << it->first << " = " << it->second
<< endl;
um.erase(um.begin());
cout << endl;
cout << "Unordered map contains following elements after erase operation"
<< endl;
for (auto it = um.begin(); it != um.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 before erase operation
e = 5
a = 1
b = 2
c = 3
d = 4
Unordered map contains following elements after erase operation
a = 1
b = 2
c = 3
d = 4