Compartir a través de


list::erase

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

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

Parámetros

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

  • _First
    Posición del primer elemento quitado de la lista.

  • _Last
    Colocar simplemente más allá del último elemento quitado de la lista.

Valor devuelto

Un iterador bidireccional que designa el primer elemento que permanece más allá de cualquier elemento quitado, o un puntero al final de la lista si no existe ese elemento.

Comentarios

Ninguna reasignación aparece, por lo que los iteradores y referencias dejan de ser válidos solo para los elementos borrados.

barrido nunca produce 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: <lista>

espacio de nombres: std

Vea también

Referencia

list Class

Biblioteca de plantillas estándar