Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ STL의 멀티맵 key_comp()


이 기사에서는 C++ STL에서 multimap::key_comp() 함수의 작동, 구문 및 예제에 대해 설명합니다.

C++ STL의 멀티맵이란 무엇입니까?

멀티맵은 맵 컨테이너와 유사한 연관 컨테이너입니다. 또한 키-값과 매핑된 값의 조합으로 구성된 요소를 특정 순서로 쉽게 저장할 수 있습니다. 멀티맵 컨테이너에는 동일한 키와 연결된 여러 요소가 있을 수 있습니다. 데이터는 항상 관련 키를 사용하여 내부적으로 정렬됩니다.

멀티맵::key_comp()이란 무엇입니까?

multimap::key_comp( )는 헤더 파일 아래에 있는 함수입니다. 이 함수는 키 비교 개체의 복사본을 반환합니다. 이것은 기본적으로 보다 작음 연산자 <와 동일하게 작동하는 개체보다 작습니다. 개체는 멀티맵 컨테이너에서 요소 키의 순서를 확인합니다. 이 함수는 두 개의 인수를 사용하여 키를 확인하고 첫 번째 요소가 더 작고 두 번째 요소보다 앞에 와야 하는 경우 true를 반환하고, 그렇지 않으면 false를 반환합니다.

구문

Key_compare.key_comp();

매개변수

이 함수는 매개변수를 허용하지 않습니다.

반환 값

비교 대상을 반환합니다.

입력

multimap<char, int> newmap;
multimap<char, int> :: key_compare cmp = newmap.key_comp();
newmap.insert(make_pair(‘A’, 1));
newmap.insert(make_pair(‘B’, 2));
newmap.insert(make_pair(‘C’, 3));

출력

A= 1
B= 2
C= 3

#include <iostream>
#include <map<
using namespace stgd;
int main(){
   multimap<int, char> mul;
   multimap<int, char>::key_compare cmp = mul.key_comp();
   //inserting elements at given key
   mul.insert(make_pair(0, 'A'));
   mul.insert(make_pair(1, 'B'));
   mul.insert(make_pair(2, 'C'));
   mul.insert(make_pair(3, 'D'));
   int a = mul.rbegin()->first;
   multimap<int, char>::iterator it = mul.begin();
   cout<<"Elements at given key is : "<<'\n';
   do {
      cout << it->first << " = " << it->second << '\n';
   }
   while (cmp((*it++).first, a));
      return 0;
}

출력

위 코드를 실행하면 다음 출력이 생성됩니다 -

Elements at given key is :
0 = A
1 = B
2 = C
3 = D