forward_list_erase_after

forward_list_erase_after (std::forward_list::erase_after — 지정 위치 뒤 원소 제거)

std::forward_list에서 지정한 위치 바로 뒤의 원소를 제거하는 멤버 함수예요. 단일 원소 또는 범위로 제거할 수 있어요.

출처: cppreference

본문

시그니처는 다음과 같아요.

iterator erase_after( const_iterator pos );               // (1) (since C++11)
iterator erase_after( const_iterator first, const_iterator last );   // (2) (since C++11)

컨테이너에서 지정한 원소를 제거해요.

(1) pos를 뒤따르는 원소를 제거해요.

(2) first를 뒤따르는 원소부터 last까지의 원소들을 제거해요.

매개변수

  • pos: 제거할 원소 바로 앞을 가리키는 이터레이터
  • first, last: 제거할 원소 범위를 정의하는 이터레이터 쌍

반환값

(1) 지워진 원소를 뒤따르는 원소를 가리키는 이터레이터. 그림 원소가 없으면 end().

(2) last를 가리키는 이터레이터.

복잡도

(1) 상수. (2) firstlast 사이 거리에 선형.

예제

#include <forward_list>
#include <iostream>
int main()
{
    std::forward_list<int> fl{1, 2, 3, 4};
    auto it = fl.begin();            // 1
    fl.erase_after(it);              // 1 뒤(2) 제거 -> {1, 3, 4}
    for (int x : fl) std::cout << x << ' ';
}

더 알아보기 (Learn more)

cppreference