Programming/c++

[c++] multiset

owls 2023. 2. 12. 22:30
728x90

multiset 클래스는 포함된 요소값이 고유할 필요가 없고 데이터가 자동 정렬되는 기준인 키 값으로 사용된 컬렉션의 데이터를 저장 및 검색하는 데 사용됩니다. 요소의multiset키 값은 직접 변경되지 않을 수 있습니다. 대신, 이전 값을 삭제하고 새 값의 요소를 삽입해야 합니다.

1. 클래스 헤더 파일

#include <set>

2. 클래스 원형

template <class Key, class Compare =less <Key>, class Allocator =allocator <Key>> 
class multiset

 

3. Parameter (매개 변수)

key multiset에 저장되는 요소 데이터 형식
Compare multiset 두 요소 값을 정렬 키로 비교하여 해당 요소의 상대 순서를 확인할 수 있는 함수 개체를 제공하는 형식
이진 조건자 lessKey<> 가 기본값입니다.
Allocator 메모리 할당 및 할당 취소에 대한 multiset 세부정보를 캡슐화하는 저장된 할당자 개체를 나타내는 형식
기본값은 allocator<key>입니다.

 

4. Typedefs

형식 이름 설명
allocator_type allocator 개체에 대한 multiset 클래스의 typedef
const_iterator const의 multiset 요소를 읽을 수 있는 양방향 반복기에 대한 typedef
const_pointer const의 multiset 요소를 가리키는 포인터에 대한 typedef
const_reference 읽기 및 const 작업 수행을 위해 const 저장된 요소에 대한 참조에 multiset 대한 typedef입니다.
const_reverse_iterator const의 multiset 요소를 읽을 수 있는 양방향 반복기에 대한 typedef
difference_type 반복기가 가리키는 요소 사이의 범위에 있는 multiset의 요소 개수에 대한 부호 있는 정수 typedef
iterator multiset의 모든 요소를 읽거나 수정할 수 있는 양방향 반복기에 대한 typedef
key_compare multiset의 두 요소간 상대적 순서를 결정하는 두 키를 비교할 수 있는 함수 개체에 대한 typedef
key_type multiset의 두 요소간 상대적 순서를 결정하는 두 정렬 키를 비교할 수 있는 함수 개체에 대한 typedef
pointer multiset의 요소를 가리키는 포인터에 대한 typedef
reference multiset에 저장된 요소에 대한 참조의 typedef
reverse_iterator 역순 multiset의 요소를 읽거나 수정할 수 있는 양방향 반복기에 대한 typedef
size_type multiset에서 요소 수를 표현할 수 있는 부호 없는 정수 형식입니다.
value_compare 두 요소를 정렬 키로 비교하여 multiset에서 상대적 순서를 결정할 수 있는 함수 개체의 typedef
value_type 해당 용량 내 multiset 요소로 저장된 개체를 값으로 설명하는 typedef

 

5. Member Function

멤버 함수 Description
begin multiset의 첫 번째 요소를 가리키는 반복기를 반환합니다.
cbegin multiset의 첫 번째 요소를 주소 지정하는 상수 반복기를 반환합니다.
cend multiset에서 마지막 요소 다음에 나오는 위치를 주소 지정하는 상수 반복기를 반환합니다.
clear multiset의 모든 요소를 지웁니다.
containsC++20 에 지정된 키가 multiset있는 요소가 있는지 확인합니다.
count 키가 매개 변수로 지정된 키와 일치하는 multiset의 요소 수를 반환합니다.
crbegin 역순 multiset에서 첫 번째 요소를 주소 지정하는 상수 반복기를 반환합니다.
crend 역순 multiset에서 마지막 요소 다음에 나오는 위치를 주소 지정하는 상수 반복기를 반환합니다.
emplace 생성된 요소를 multiset에 삽입합니다.
emplace_hint 배치 힌트를 사용하여 생성된 요소를 multiset에 삽입합니다.
empty multiset가 비어 있는지 여부를 테스트합니다.
end multiset에서 마지막 요소 다음 위치를 가리키는 반복기를 반환합니다.
equal_range 반복기 쌍을 반환합니다. multiset에서 지정된 키보다 큰 키가 있는 첫 번째 요소를 가리키는 쌍의 첫 번째 반복기 multiset에서 키보다 크거나 같은 키가 있는 첫 번째 요소를 가리키는 쌍의 두 번째 반복기
erase 지정된 위치에서 multiset의 요소 또는 요소의 범위를 제거하거나 지정된 키와 일치하는 요소를 제거합니다.
find multiset에서 지정된 키와 같은 키를 가진 요소의 첫 번째 위치를 가리키는 반복기를 반환합니다.
get_allocator allocator를 생성하는 데 사용된 multiset 개체의 복사본을 반환합니다.
insert multiset에 요소 또는 요소의 범위를 삽입합니다.
key_comp multiset의 두 요소간 상대적 순서를 결정하는 두 정렬 키를 비교할 수 있는 함수 개체를 제공합니다.
lower_bound multiset에서 지정된 키보다 크거나 같은 키를 가진 첫 번째 요소에 반복기를 반환합니다.
max_size multiset의 최대 길이를 반환합니다.
rbegin 역순 multiset의 첫 번째 요소를 가리키는 반복기를 반환합니다.
rend 역순 multiset에 마지막 요소 다음 위치를 가리키는 반복기를 반환합니다.
size multiset의 요소 수를 반환합니다.
swap  multiset의 요소를 교환합니다.
upper_bound multiset에 지정된 키보다 큰 키를 가진 첫 번째 요소에 반복기를 반환합니다.
value_comp multiset에서 요소 값의 정렬에 사용되는 비교 개체의 복사본을 검색합니다.

 

6. Example

 

 

728x90