C ++ 라이브러리-<forward_list>
소개
forward_list는 널리 사용되는 시퀀스 컨테이너입니다. 컨테이너는 동일한 유형의 데이터를 보유하는 개체입니다. forward_list 컨테이너는 단일 연결 목록으로 구현되므로 데이터에 대한 단방향 순차 액세스를 제공합니다.
forward_list는 빠른 임의 액세스를 제공하지 않으며 한 방향으로 만 순차 액세스를 지원합니다. forward_list를 사용하면 시퀀스 내 어디에서나 일정한 시간에 삽입 및 삭제 작업이 가능합니다.
forward_list의 요소는 서로 다른 메모리 청크에 흩어져있을 수 있습니다. 컨테이너는 데이터에 대한 순차적 액세스를 허용하는 데 필요한 정보를 저장합니다. forward_lists는 런타임에 양쪽 끝에서 필요에 따라 축소하거나 확장 할 수 있습니다. 스토리지 요구 사항은 내부 할당 자에 의해 자동으로 충족됩니다.
크기가 0 인 forward_list도 유효합니다. 이 경우 forward_list.begin () 및 forward_list.end ()는 동일한 위치를 가리 킵니다. 그러나 front () 호출 동작은 정의되지 않았습니다.
정의
다음은 <forward_list> 헤더 파일의 std :: forward_list 정의입니다.
template < class T, class Alloc = allocator<T> > class forward_list;
매개 변수
T − 포함 된 요소의 유형.
T는 사용자 정의 유형을 포함한 다른 데이터 유형으로 대체 될 수 있습니다.
Alloc − 할당 자 개체의 유형.
기본적으로 가장 간단한 메모리 할당 모델을 정의하고 값에 독립적 인 할당 자 클래스 템플릿이 사용됩니다.
회원 유형
다음 멤버 유형은 멤버 함수에 의해 매개 변수 또는 리턴 유형으로 사용될 수 있습니다.
Sr. 아니. | 회원 유형 | 정의 |
---|---|---|
1 | 값 _ 유형 | T (템플릿의 첫 번째 매개 변수) |
2 | 할당 자 _ 유형 | Alloc (템플릿의 두 번째 매개 변수) |
삼 | 참고 | 값 _ 유형 & |
4 | const_reference | const 값 _ 유형 & |
5 | 바늘 | 값 _ 유형 * |
6 | const_pointer | const 값 _ 유형 * |
7 | 반복자 | value_type에 대한 랜덤 액세스 반복기 |
8 | const_iterator | const value_type에 대한 임의 액세스 반복기 |
9 | 크기 유형 | size_t |
10 | 차이 _ 유형 | ptrdiff_t |
<forward_list>의 함수
다음은 <forward_list> 헤더의 모든 메소드 목록입니다.
생성자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | forward_list :: forward_list 기본 생성자
요소가없는 빈 forward_list를 생성합니다. |
2 | forward_list :: forward_list 채우기 생성자
n 개의 요소 로 새로운 forward_list를 구성하고 forward_list의 각 요소에 val 을 할당합니다 . |
삼 | forward_list :: forward_list 채우기 생성자
n 개의 요소 로 새로운 forward_list를 생성하고 forward_list의 각 요소에 0 값을 할당합니다. |
4 | forward_list :: forward_list 범위 생성자
처음 부터 마지막 까지의 범위에있는만큼 많은 요소로 forward_list를 구성 합니다. |
5 | forward_list :: forward_list 복사 생성자
기존 목록에있는 각 요소의 복사본으로 forward_list를 생성합니다. |
6 | forward_list :: forward_list 이동 생성자
이동 의미 체계를 사용하여 other 의 내용으로 forward_list를 구성합니다 . |
7 | forward_list :: forward_list 이니셜 라이저 목록 생성자 초기화 목록에서 forward_list를 생성합니다. |
폐물 소각로
Sr. 아니. | 방법 및 설명 |
---|---|
1 | forward_list :: ~ forward_list
메모리 할당을 해제하여 forward_list 객체를 파괴합니다. |
회원 기능
Sr. 아니. | 방법 및 설명 |
---|---|
1 | forward_list :: 범위 버전 할당
이전 값을 대체하여 forward_list에 새 값을 할당합니다. |
2 | forward_list :: 채우기 버전 할당
이전 값을 대체하여 forward_list에 새 값을 할당합니다. |
삼 | forward_list :: 할당 이니셜 라이저 목록 버전
이전 값을 대체하여 forward_list에 새 값을 할당합니다. |
4 | forward_list :: before_begin
forward_list의 첫 번째 요소 앞의 위치를 가리키는 임의 액세스 반복기를 리턴합니다. |
5 | forward_list :: begin
forward_list의 첫 번째 요소를 가리키는 임의 액세스 반복기를 반환합니다. |
6 | forward_list :: cbefore_begin
forward_list의 첫 번째 요소 앞의 위치를 가리키는 상수 임의 액세스 반복기를 리턴합니다. |
7 | forward_list :: cbegin
forward_list의 시작을 가리키는 상수 임의 액세스 반복기를 반환합니다. |
8 | forward_list :: cend
forward_list의 끝을 가리키는 상수 임의 액세스 반복기를 반환합니다. |
9 | forward_list :: clear
forward_list에서 모든 요소를 제거하여 forward_list를 파괴하고 forward_list의 크기를 0으로 설정합니다. |
10 | forward_list :: emplace_after
forward_list의 위치 뒤에 새 요소를 구성 및 삽입 하고 forward_list의 크기를 1 씩 늘립니다. |
11 | forward_list :: emplace_front
forward_list의 시작 부분에 새 요소를 삽입하고 forward_list의 크기를 1 씩 늘립니다. |
12 | forward_list :: empty
forward_list가 비어 있는지 여부를 테스트합니다. |
13 | forward_list :: end
forward_list의 마지막 요소를 가리키는 임의 액세스 반복기를 반환합니다. |
14 | forward_list :: erase_after 위치 버전
forward_list에서 위치 뒤의 단일 요소를 제거합니다 . |
15 | forward_list :: erase 범위 버전
forward_list에서 요소 범위를 제거합니다. |
16 | forward_list :: front
forward_list의 첫 번째 요소에 대한 참조를 반환합니다. |
17 | forward_list :: get_allocator
forward_list와 관련된 할당자를 반환합니다. |
18 | forward_list :: insert_after 단일 요소 버전
forward_list의 위치 뒤에 새 요소를 삽입하여 반복자를 확장합니다. |
19 | forward_list :: insert_after 이동 버전
forward_list의 위치 뒤에 새 요소를 삽입하여 반복자를 확장합니다. |
20 | forward_list :: insert_after 채우기 버전
forward_list의 위치 뒤에 새 요소를 삽입하여 반복자를 확장합니다. |
21 | forward_list :: insert_after 범위 버전
forward_list의 위치 뒤에 새 요소를 삽입하여 반복자를 확장합니다. |
22 | forward_list :: insert_after 이니셜 라이저 목록 버전
forward_list의 위치 뒤에 새 요소를 삽입하여 반복자를 확장합니다. |
23 | forward_list :: max_size
forward_list가 보유 할 수있는 최대 요소 수를 리턴합니다. |
24 | forward_list :: merge
정렬 된 두 개의 forward_list를 하나로 병합합니다. |
25 | forward_list :: merge 이동 버전
정렬 된 두 개의 forward_list를 하나로 병합합니다. |
26 | forward_list :: merge 비교 기능
정렬 된 두 개의 forward_list를 하나로 병합합니다. |
27 | forward_list :: merge 비교 기능 이동 버전
이동 의미 체계를 사용하여 정렬 된 두 개의 forward_list를 하나로 병합합니다. |
28 | forward_list :: operator = 버전 복사 이전 내용을 대체하여 forward_list에 새 내용을 할당합니다. |
29 | forward_list :: operator = 버전 이동
이전 내용을 교체하여 forward_list에 새 내용을 할당합니다. |
30 | forward_list :: operator = 이니셜 라이저 목록 버전
이전 내용을 교체하여 forward_list에 새 내용을 할당합니다. |
31 | forward_list :: pop_front
forward_list에서 첫 번째 요소를 제거합니다. |
32 | forward_list :: push_front 사본 버전
forward_list의 시작 부분에 새 요소를 삽입합니다. |
33 | forward_list :: push_front 이동 버전
forward_list의 시작 부분에 새 요소를 삽입합니다. |
34 | forward_list :: remove
값과 일치하는 forward_list에서 요소를 제거합니다. |
35 | forward_list :: remove_if
조건을 충족하는 forward_list에서 요소를 제거합니다. |
36 | forward_list :: resize
forward_list의 크기를 변경합니다. |
37 | forward_list :: 값 버전 크기 조정
forward_list의 크기를 변경합니다. |
38 | forward_list :: reverse
forward_list에있는 요소의 순서를 반대로합니다. |
39 | forward_list :: sort
forward_list의 요소를 정렬합니다. |
40 | forward_list :: sort 비교 기능
forward_list의 요소를 정렬합니다. |
41 | forward_list :: splice_after
forward_list에서 * this로 모든 요소를 전송합니다. |
42 | forward_list :: splice_after 이동 버전
move semantics를 사용하여 forward_list x 에서 * this 로 모든 요소를 전송합니다 . |
43 | forward_list :: splice_after 단일 요소
iterator i 가 가리키는 요소 를 forward_list x 에서 * this로 전송 합니다. |
44 | forward_list :: splice_after 단일 요소 이동 버전
move semantics를 사용하여 iterator i 가 가리키는 요소 를 forward_list x 에서 * this 로 전송합니다 . |
45 | forward_list :: splice_after 범위 버전
x 에서 * this 까지 처음 부터 마지막 까지 의 범위에있는 요소를 전송합니다 . |
46 | forward_list :: splice 범위 및 이동 버전
이동 의미 체계를 사용하여 x 에서 * this 까지 처음 부터 마지막 까지 의 범위에있는 요소를 전송합니다 . |
47 | forward_list :: swap
forward_list의 내용을 다른 forward_list x의 내용과 교환합니다 . |
48 | forward_list :: unique
forward_list에서 모든 연속 중복 요소를 제거합니다. |
49 | forward_list :: unique
forward_list에서 모든 연속 중복 요소를 제거합니다. |
비 멤버 오버로드 함수
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 연산자 ==
두 개의 forward_list가 같은지 여부를 테스트합니다. |
2 | 연산자! =
두 개의 forward_list가 같은지 여부를 테스트합니다. |
삼 | 연산자 <
첫 번째 forward_list가 다른 것보다 작은 지 여부를 테스트합니다. |
4 | 연산자 <=
첫 번째 forward_list가 other보다 작거나 같은지 여부를 테스트합니다. |
5 | 연산자>
첫 번째 forward_list가 다른 것보다 큰지 여부를 테스트합니다. |
6 | 연산자> =
첫 번째 forward_list가 다른 것보다 크거나 같은지 여부를 테스트합니다. |
7 | 교환
두 forward_list의 내용을 교환합니다. |