Biblioteca de vectores C ++ - Función erase ()

Descripción

La función C ++ std::vector::erase() elimina el rango de elementos del vector.

Esta función miembro modifica el tamaño del vector.

Declaración

A continuación se muestra la declaración de la función std :: vector :: erase () del encabezado std :: vector.

C ++ 98

iterator erase (iterator first, iterator last);

C ++ 11

iterator erase (const_iterator first, const_iterator last);

Parámetros

  • first - Ingrese el iterador a la posición inicial en el rango.

  • last - Ingrese el iterador a la posición final en el rango.

Valor devuelto

Devuelve un iterador de acceso aleatorio.

Excepciones

Si el rango no es válido, el comportamiento no está definido.

Complejidad del tiempo

Lineal es decir O (n)

Ejemplo

El siguiente ejemplo muestra el uso de la función 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;
}

Compilemos y ejecutemos el programa anterior, esto producirá el siguiente resultado:

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