std:: list
|
헤더 파일에 정의됨
<list>
|
||
|
template
<
class
T,
|
(1) | |
|
namespace
pmr
{
template
<
class
T
>
|
(2) | (C++17부터) |
std::list
는 컨테이너 내 어디에서나 요소의 상수 시간 삽입 및 제거를 지원하는 컨테이너입니다. 빠른 임의 접근은 지원되지 않습니다. 일반적으로 이중 연결 리스트로 구현됩니다.
std::forward_list
와 비교할 때, 이 컨테이너는 공간 효율성이 낮은 대신 양방향 반복 기능을 제공합니다.
리스트 내부 또는 여러 리스트 간에 요소를 추가, 제거 및 이동해도 반복자나 참조는 무효화되지 않습니다. 해당 요소가 삭제될 때만 반복자가 무효화됩니다.
std::list
는
Container
,
AllocatorAwareContainer
,
SequenceContainer
그리고
ReversibleContainer
요구사항을 충족합니다.
std::list
의 모든 멤버 함수는
constexpr
입니다: 상수 표현식 평가에서
std::list
객체를 생성하고 사용하는 것이 가능합니다.
그러나
|
(C++26부터) |
목차템플릿 매개변수
멤버 타입
멤버 함수
비멤버 함수
참고 사항
예제
이 코드 실행
#include <algorithm> #include <iostream> #include <list> int main() { // 정수를 포함하는 리스트 생성 std::list<int> l = {7, 5, 16, 8}; // 리스트의 앞에 정수 추가 l.push_front(25); // 리스트의 뒤에 정수 추가 l.push_back(13); // 검색을 통해 16 앞에 정수 삽입 auto it = std::find(l.begin(), l.end(), 16); if (it != l.end()) l.insert(it, 42); // 리스트 출력 std::cout << "l = { "; for (int n : l) std::cout << n << ", "; std::cout << "};\n"; } 출력: l = { 25, 7, 5, 42, 16, 8, 13, };
결함 보고서다음 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.
참고 항목
| ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||