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

집합 컨테이너와 관련된 할당 자 개체의 복사본을 반환합니다.