Compartir a través de


list::erase

Quita un elemento o un intervalo de elementos de una lista de las posiciones especificadas.

iterator erase(    iterator _Where ); iterator erase(    iterator _First,    iterator _Last );

Parámetros

  • _Where
    Posición del elemento que se quitará de la lista.

  • _First
    Posición del primer elemento que se quitará de la lista.

  • _Last
    Posición inmediatamente siguiente a la del último elemento que se quitará de la lista.

Valor devuelto

Iterador bidireccional que designa el primer elemento restante después de los elementos quitados o, si no hay ningún elemento después, un puntero al final de la lista.

Comentarios

No se produce ninguna reasignación, así que los iteradores y las referencias solo dejarán de ser válidos para los elementos borrados.

erase nunca lanza una excepción.

Ejemplo

// list_erase.cpp
// compile with: /EHsc
#include <list>
#include <iostream>

int main( ) 
{
   using namespace std;
   list <int> c1;
   list <int>::iterator Iter;
   
   c1.push_back( 10 );
   c1.push_back( 20 );
   c1.push_back( 30 );
   c1.push_back( 40 );
   c1.push_back( 50 );
   cout << "The initial list is:";
   for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
      cout << " " << *Iter;
   cout << endl;

   c1.erase( c1.begin( ) );
   cout << "After erasing the first element, the list becomes:";
   for ( Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
      cout << " " << *Iter;
   cout << endl;
   Iter = c1.begin( );
   Iter++;
   c1.erase( Iter, c1.end( ) );
   cout << "After erasing all elements but the first, the list becomes: ";
   for (Iter = c1.begin( ); Iter != c1.end( ); Iter++ )
      cout << " " << *Iter;
   cout << endl;
}
  

Requisitos

Encabezado: <list>

Espacio de nombres: std

Vea también

Referencia

list (Clase)

Biblioteca de plantillas estándar