C ++ Vector Library - funzione erase ()

Descrizione

La funzione C ++ std::vector::erase() rimuove l'intervallo di elementi dal vettore.

Questa funzione membro modifica la dimensione del vettore.

Dichiarazione

Di seguito è riportata la dichiarazione per la funzione std :: vector :: erase () nel modulo std :: vector header.

C ++ 98

iterator erase (iterator first, iterator last);

C ++ 11

iterator erase (const_iterator first, const_iterator last);

Parametri

  • first - Input iteratore alla posizione iniziale nell'intervallo.

  • last - Input iteratore alla posizione finale nell'intervallo.

Valore di ritorno

Restituisce un iteratore ad accesso casuale.

Eccezioni

Se l'intervallo non è valido, il comportamento non è definito.

Complessità temporale

Lineare cioè O (n)

Esempio

Il seguente esempio mostra l'utilizzo della funzione 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;
}

Compiliamo ed eseguiamo il programma sopra, questo produrrà il seguente risultato:

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