list::erase
목록에서 지정 된 위치에서 요소 또는 요소 범위를 제거합니다.
iterator erase(
iterator _Where
);
iterator erase(
iterator _First,
iterator _Last
);
매개 변수
_Where
목록에서 제거할 요소의 위치입니다._First
첫 번째 요소의 위치 목록에서 제거 합니다._Last
마지막 요소 바로 뒤에 위치 목록에서 제거 합니다.
반환 값
제거 된 요소 외에 남은 첫 번째 요소를 지정 하는 양방향 반복기 또는 이러한 요소가 있으면 목록의 끝에 대 한 포인터입니다.
설명
반복기 및 참조는 지워진된 요소를 유효 하지 않게 되므로 재할당 되지 발생 합니다.
지우기 예외를 throw 하지 않습니다.
예제
// 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;
}
요구 사항
헤더: <list>
네임 스페이스: std