Biblioteca de vetores C ++ - função erase ()

Descrição

A função C ++ std::vector::erase() remove a faixa de elemento do vetor.

Esta função de membro modifica o tamanho do vetor.

Declaração

A seguir está a declaração para a função std :: vector :: erase () do cabeçalho std :: vector.

C ++ 98

iterator erase (iterator first, iterator last);

C ++ 11

iterator erase (const_iterator first, const_iterator last);

Parâmetros

  • first - Insira o iterador na posição inicial no intervalo.

  • last - Insira o iterador para a posição final no intervalo.

Valor de retorno

Retorna um iterador de acesso aleatório.

Exceções

Se o intervalo for inválido, o comportamento é indefinido.

Complexidade de tempo

Linear, ou seja, O (n)

Exemplo

O exemplo a seguir mostra o uso da função std :: vector :: erase ().

#include <iostream>
#include <vector>

using namespace std;

int main(void) {
   vector<int> v = {1, 2, 3, 4, 5};

   cout << "Original vector" << endl;
   for (auto it = v.begin(); it != v.end(); ++it)
      cout << *it << endl;

   /* Remove first two element */
   v.erase(v.begin(), v.begin() + 2);

   cout << "Modified vector" << endl;
   for (auto it = v.begin(); it != v.end(); ++it)
      cout << *it << endl;

   return 0;
}

Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -

Original vector
1
2
3
4
5
Modified vector
3
4
5