이름공간
변수
행위

std::list

cppreference.com
< cpp‎ | container
Defined in header <list>
template<

    class T,
    class Allocator = std::allocator<T>

> class list;

std::list 는 컨테이너 안의 어느 위치에서나 원소의 삽입 및 삭제를 상수 시간에 지원하는 컨테이너입니다. 랜덤 액세스(특정 위치에 접근)는 지원되지 않습니다. 보통 이중 연결 리스트로 구현됩니다. std::forward_list와 비교하면, 이 컨테이너는 공간적으로 비효율적이지만 양방향 탐색을 지원합니다.

리스트 내부 혹은 여러 리스트들 간에서 원소를 추가, 삭제 그리고 이동하더라도 iterator는 그대로 사용할 수 있습니다. iterator는 자신이 가리키는 원소가 삭제될때만 무효화됩니다.

std::listContainer, AllocatorAwareContainer, SequenceContainer 그리고 ReversibleContainer 의 조건을 만족합니다.

목차

[편집] 템플릿 인자

T - 원소의 타입.
TCopyAssignableCopyConstructible 의 요구 조건을 만족시켜야 한다. (until C++11)
원소가 만족시켜야 하는 조건들은 컨테이너에서 행해지는 실제 작업들에 의존한다. 일반적으로, 원소 형은 MoveConstructibleMoveAssignable 의 요구 조건을 만족시켜야 하나, 대부분의 멤버 함수들은 더 많은 조건을 요구한다. (since C++11)

[edit]

Allocator - 원소들을 저장하기 위해 메모리를 얻기 위해 쓰이는 할당자(allocator)이다. 이 형은 Allocator 의 요구 조건을 만족시켜야 한다. [edit]

[편집] 멤버 타입

멤버 타입 정의
value_type T [edit]
allocator_type 할당자 [edit]
size_type 부호 없는 정수(unsigned int) 타입 (일반적으로 std::size_t) [edit]
difference_type 부호 있는 정수(signed int) 타입 (보통 std::ptrdiff_t) [edit]
reference Allocator::reference (until C++11)
value_type& (since C++11) [edit]
const_reference Allocator::const_reference (until C++11)
const value_type& (since C++11) [edit]
pointer Allocator::pointer (until C++11)
std::allocator_traits<Allocator>::pointer (since C++11) [edit]
const_pointer Allocator::const_pointer (until C++11)
std::allocator_traits<Allocator>::const_pointer (since C++11) [edit]
iterator BidirectionalIterator [edit]
const_iterator 상수(constant) 양방향 반복자(iterator) [edit]
reverse_iterator std::reverse_iterator<iterator> [edit]
const_reverse_iterator std::reverse_iterator<const_iterator> [edit]

[편집] 멤버 함수

list의 생성자이다.
(public member function) [edit]
list의 소멸자이다.
(public member function) [edit]
컨테이너에 값을 할당한다.
(public member function) [edit]
컨테이너에 값을 할당한다.
(public member function) [edit]
연관된 할당자를 반환한다.
(public member function) [edit]
원소에 대한 접근
첫번째 원소에 접근한다.
(public member function) [edit]
마지막 원소에 접근한다.
(public member function) [edit]
Iterator
첫번째 원소로의 반복자(iterator)를 반환한다.
(public member function) [edit]
마지막 원소로의 반복자(iterator)를 반환한다.
(public member function) [edit]
첫번째 원소로의 역방향 반복자(reverse iterator)를 반환한다.
(public member function) [edit]
마지막 원소로의 역방향 반복자(reverse iterator)를 반환한다.
(public member function) [edit]
수용량
현재 컨테이너가 비어있는지 확인한다.
(public member function) [edit]
원소의 갯수를 반환한다.
(public member function) [edit]
원소의 최대 갯수를 반환한다.
(public member function) [edit]
제어자
내용물을 모두 지운다.
(public member function) [edit]
원소를 삽입한다.
(public member function) [edit]
(C++11)
원소를 바로 만들어 삽입한다.
(public member function) [edit]
erases elements
(public member function) [edit]
끝에 원소를 삽입한다.
(public member function) [edit]
constructs elements in-place at the end
(public member function) [edit]
마지막 원소를 제거한다
(public member function) [edit]
새로운 원소를 앞에 삽입한다
(public member function) [edit]
constructs elements in-place at the beginning
(public member function) [edit]
첫번째 원소를 없앤다
(public member function) [edit]
원소의 총 갯수를 바꾼다
(public member function) [edit]
원소들을 서로 바꾼다
(public member function) [edit]
작업
merges two sorted lists
(public member function) [edit]
moves elements from another list
(public member function) [edit]
removes elements satisfying specific criteria
(public member function) [edit]
reverses the order of the elements
(public member function) [edit]
removes consecutive duplicate elements
(public member function) [edit]
sorts the elements
(public member function) [edit]

[편집] 비 멤버 함수

lexicographically compares the values in the list
(function template) [edit]
specializes the std::swap algorithm
(function template) [edit]