deque::erase 및 deque::clear

사용 하는 방법을 보여 줍니다 있는 deque::erasedeque::clear Visual C++에서 표준 템플릿 라이브러리 (STL) 함수입니다.

iterator erase(
   iterator Iter
);
iterator erase(
   iterator First,
   iterator Last
); void clear( ) const;

설명

[!참고]

프로토타입에 클래스/매개 변수 이름은 헤더 파일에서 버전이 일치 하지 않습니다.일부 가독성을 높이기 위해 수정 되었습니다.

첫 번째 지우기 멤버 함수 포인터가 가리키는 컨테이너의 요소를 제거 합니다. Iter.두 번째 지우기 멤버 함수 범위에서 컨테이너의 요소를 제거 합니다 [First, Last).모두 제거, 모든 요소 외에 남은 첫 번째 요소를 지정 하는 반복기를 반환 또는 최종 이러한 요소가 존재 하는 경우.제거 N 요소 원인 N 소멸자 호출 및 각 삽입 지점부터 떨어진 최종 시퀀스의 요소를 할당 합니다.양쪽 끝에 있는 요소를 제거 하는 지워진된 요소를 지정 하는 참조 및 반복기 무효화 됩니다.그렇지 않으면, 요소 지우기 반복기 및 참조를 모두 무효화 합니다.지우기 멤버 함수 호출 지우기(시작, 최종).

예제

// deque_erase_clear.cpp 
// compile with: /EHsc
// 
// Functions:
//
//    erase
//    clear
//    begin
//    end
//////////////////////////////////////////////////////////////////////

#include <iostream>
#include <deque>

using namespace std;


typedef deque<int >  INTDEQUE;
void print_contents (INTDEQUE  deque);

int main()
{
    // create a and with elements 1,2,3,4 and 5
    INTDEQUE  a;
    a.push_back(1);
    a.push_back(2);
    a.push_back(3);
    a.push_back(4);
    a.push_back(5);

    //print the contents
    print_contents (a);

    //  erase the second element
    a.erase(a.begin()+1);
    print_contents (a);

    //erase the last two elements
    a.erase(a.end()-2,a.end());
    print_contents (a);

    //clear a
    a.clear();
    print_contents (a);
}

void print_contents (INTDEQUE  deque) {
    INTDEQUE::iterator pdeque;

    cout <<"The output is: ";

        for(pdeque = deque.begin();
        pdeque != deque.end();
        pdeque++)
    {
        cout << *pdeque <<" " ;
    }
        cout<<endl;
}
  

요구 사항

헤더: <deque>

참고 항목

개념

표준 템플릿 라이브러리 샘플