posted by 구로보루 2018. 4. 3. 21:00

 forward_list는 단일 연결리스트로 된 가변 순차열이다. list와는 다르게 단일로 연결되어 있기 때문에 역방향 반복자나 순차열의 맨 마지막인 back 함수를 사용할 수 없다.

 

forward_list<T>

T -> 원소의 타입

 

 멤버 함수

 begin

 시작 반복자를 반환

 end

 끝 반복자를 반환

 cbegin

 const 시작 반복자를 반환

 before_begin

 첫 번재 원소의 하나 앞을 가르키는 반복자 반환

 cbefore_begin

 첫 번째 원소의 하나 앞을 가르키는 const 반복자 반환

 cend

 const 끝 반복자를 반환

 assign

 내용을 새 원소들로 대체

 operator=

 원소들을 다른 컨테이너의 원소들이나 초기화 리스트로 대체

 max_size

 원소들의 최대 개수 반환

 resize

 원소들의 개수 변경

 empty

 원소가 없으면 true 반환

 front

 첫 번째 원소 참조 반환

 push_front

 순차열의 시작에 원소를 추가

 emplace_after

 지정된 위치 뒤에 내부에서 원소를 생성

 emplace_front

 순차열의 시작에 내부에서 원소를 생성

 insert_after

 지정된 위치 뒤에 하나 이상의 원소를 추가

 pop_front

 순차열의 시작에서 원소 제거

 reverse

 원소들의 순서를 거꾸로 바꿈

 erase_after

 지정된 위치 뒤에 원소 하나 또는 범위로 지정된 원소들 제거

 remove

 전달된 인수와 일치하는 원소들을 제거

 remove_if

 단항 조건자 인수가 true를 반환하는 원소들을 제거

 unique

 연속되어 중복된 원소를 제거

 clear

 모든 원소를 제거하고 size는 0으로

 swap

 두 컨테이너의 모든 원소 교환

 sort

 원소들을 정렬

 merge

 두 컨테이너 병합 (모두 오름차순 정렬된 상태)

 splice_after

 지정된 위치 뒤에 타입이 같은 다른 리스트 삽입

 

* insert, emplace : insert의 경우 원소를 삽입하기위해 임시로 객체를 생성하지만 emplace의 경우 임시로 객체를 생성하지 않는다.

 

* sort : 인수가 없을 경우 오름차순으로 정렬한다. 인자로 비교하는 조건을 정의한 람다식이나 함수 객체를 인수로 받을 수 있다. std::greater<T>()를 인수로 전달하면 내림차순 정렬.

 

* merge : 모든 리스트의 원소들을 오름차순으로 병합한다.

'공부 > C++(STL)' 카테고리의 다른 글

queue 컨테이너  (0) 2018.04.10
stack 컨테이너  (0) 2018.04.05
list 컨테이너  (0) 2018.04.02
deque 컨테이너  (0) 2018.03.30
vector 컨테이너  (0) 2018.03.29