Freigeben über


list::erase

Entfernt ein Element oder eine Reihe von Elementen in einer Liste aus angegebenen Speicherorten.

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

Parameter

  • _Where
    Die Position des von der Liste zu entfernenden Elements.

  • _First
    Die Position des ersten Elements, das von der Liste entfernt werden soll.

  • _Last
    Die Position direkt hinter dem letzten von der Liste entfernten Element.

Rückgabewert

Ein bidirektionaler Iterator, der das erste über die entfernten Elemente hinaus verbliebene Element festlegt, oder ein Zeiger, der das Ende der Liste darstellt, wenn kein solches Element vorhanden ist

Hinweise

Es erfolgt keine Neuzuordnung. Die Iteratoren und Verweise werden nur für die gelöschten Elemente ungültig.

erase löst nie eine Ausnahme aus.

Beispiel

// 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;
}
  

Anforderungen

Header: <list>

Namespace: std

Siehe auch

Referenz

list-Klasse

Standardvorlagenbibliothek