C ++ 라이브러리-<세트>
소개
ㅏ setKey 유형의 고유 한 개체의 정렬 된 집합을 포함하는 연관 컨테이너입니다. 각 요소는 한 번만 나타날 수 있으므로 중복은 허용되지 않습니다.
연관 컨테이너에는 집합, 다중 집합,지도 및 다중 맵의 네 가지 종류가 있습니다.
집합의 요소 값은 컨테이너에서 한 번 수정할 수 없습니다. 즉, 요소는 항상 const입니다. 그러나 용기에서 삽입하거나 제거 할 수 있습니다.
집합 컨테이너는 일반적으로 키로 개별 요소에 액세스 할 때 unorder_set 컨테이너보다 느리지 만 순서에 따라 하위 집합에 대한 직접 반복을 허용합니다.
정의
다음은 <set> 헤더 파일의 std :: set 정의입니다.
template <
class Key,
class Compare = std::less<Key>,
class Allocator = std::allocator<Key>
> class set;
매개 변수
Key − 포함 된 요소의 유형.
키는 사용자 정의 유형을 포함한 다른 데이터 유형으로 대체 될 수 있습니다.
회원 유형
다음 멤버 유형은 멤버 함수에 의해 매개 변수 또는 리턴 유형으로 사용될 수 있습니다.
Sr. 아니. | 회원 유형 | 정의 |
---|---|---|
1 | key_type | 키 |
2 | 값 _ 유형 | 키 |
삼 | 참고 | 할당 자 :: 참조 값 _ 유형 & |
4 | const_reference | 할당 자 :: const_reference const 값 _ 유형 & |
5 | 바늘 | 할당 자 :: 포인터 std :: allocator_traits <할당 자> :: 포인터 |
6 | const_pointer | 할당 자 :: const_pointer std :: allocator_traits <할당 자> :: const_pointer |
7 | 반복자 | 양방향 반복자 |
8 | const_iterator | 상수 BidirectionalIterator |
9 | reverse_iterator | std :: reverse_iterator <반복자> |
10 | const_reverse_iterator | std :: reverse_iterator <const_iterator> |
11 | 크기 유형 | 부호없는 정수 유형 (std :: size_t) |
12 | 차이 _ 유형 | 부호있는 정수 유형 (std :: ptrdiff_t) |
13 | key_compare | 비교 |
14 | value_compare | 비교 |
15 | 할당 자 _ 유형 | 할당 자 |
<set>의 기능
다음은 <set> 헤더의 모든 메소드 목록입니다.
회원 기능
DEFAULT MEMBER FUNCTIONS
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 기본 생성자
세트 컨테이너를 구성합니다. |
2 | 범위 생성자
범위의 내용으로 세트 컨테이너를 구성합니다. |
삼 | 복사 생성자
다른 세트의 사본으로 세트 컨테이너를 구성합니다. |
4 | 생성자 이동
이동 시맨틱을 사용하여 다른 세트의 내용으로 세트 컨테이너를 구성합니다. |
5 | 이니셜 라이저 목록 생성자
이니셜 라이저 목록의 내용으로 세트 컨테이너를 구성합니다. |
6 | (폐물 소각로)
설정된 컨테이너를 파괴합니다. |
7 | operator =
세트 컨테이너에 값을 할당합니다. |
이터레이터
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 설정 :: 시작
반복자를 처음으로 반환합니다. |
2 | set :: cbegin
const 반복기를 처음으로 반환합니다. |
삼 | 설정 :: 끝
끝낼 반복자를 반환합니다. |
4 | set :: cend
끝낼 상수 반복기를 반환합니다. |
5 | set :: rbegin
역순으로 시작하는 역방향 반복기를 반환합니다. |
6 | set :: crbegin
const reverse iterator를 반환하여 시작을 되돌립니다. |
7 | set :: rend
역방향 반복기를 역방향으로 반환합니다. |
8 | set :: crend
const 역방향 반복기를 역방향으로 반환합니다. |
생산 능력
Sr. 아니. | 방법 및 설명 |
---|---|
1 | set :: empty
설정된 컨테이너가 비어있는 경우 반환합니다. |
2 | 설정 :: 크기
집합 컨테이너의 요소 수를 반환합니다. |
삼 | set :: max_size
집합 컨테이너가 보유 할 수있는 최대 요소 수를 반환합니다. |
수정 자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | 설정 :: 지우기
집합 컨테이너에서 모든 요소를 제거합니다. |
2 | 설정 :: 삽입
세트 컨테이너에 새 요소를 삽입합니다. |
삼 | set :: emplace
고유 한 경우 세트에 새 요소를 삽입합니다. |
4 | set :: emplace_hint
삽입 위치에 대한 힌트와 함께 고유 한 경우 세트에 새 요소를 삽입합니다. |
5 | 설정 :: 지우기
집합 컨테이너에서 단일 요소 또는 요소 범위를 제거합니다. |
6 | set :: swap
동일한 유형의 다른 세트 컨테이너의 컨텐츠로 컨테이너의 컨텐츠를 교환합니다. |
조회
Sr. 아니. | 방법 및 설명 |
---|---|
1 | set :: count
집합 컨테이너에서 값이 일치하는 요소의 수를 반환합니다. |
2 | 설정 :: 찾기
집합 컨테이너에서 값을 검색하고 찾은 경우 반복기를 반환하고, 그렇지 않으면 set :: end에 대한 반복기를 반환합니다. |
삼 | set :: lower_bound
값보다 먼저 이동하는 것으로 간주되지 않는 집합 컨테이너의 첫 번째 요소를 가리키는 반복기를 반환합니다. |
4 | set :: upper_bound
값 뒤에 오는 것으로 간주되는 집합 컨테이너의 첫 번째 요소를 가리키는 반복기를 반환합니다. |
5 | set :: equal_range
값에 해당하는 집합 컨테이너의 모든 요소를 포함하는 범위의 경계를 반환합니다. |
관찰자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | set :: key_comp
집합 컨테이너에서 사용하는 비교 개체의 복사본을 반환합니다. |
2 | set :: value_comp
집합 컨테이너에서 사용하는 비교 개체의 복사본을 반환합니다. |
할당 자
Sr. 아니. | 방법 및 설명 |
---|---|
1 | set :: get_allocator
집합 컨테이너와 관련된 할당 자 개체의 복사본을 반환합니다. |