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

C++ STL의 다중 집합 crbegin() 및 crend() 함수

<시간/>

이 기사에서는 C++ STL에서 multiset::crbegin() 및 multiset::crend() 함수의 작동, 구문 및 예제에 대해 논의할 것입니다.

C++ STL의 다중 집합이란 무엇입니까?

다중 집합은 집합 컨테이너와 유사한 컨테이너입니다. 즉, 집합과 동일한 키 형식으로 값을 특정 순서로 저장합니다.

다중 집합에서 값은 집합과 동일한 키로 식별됩니다. 다중 집합과 집합의 주요 차이점은 집합에 고유한 키가 있다는 것입니다. 즉, 두 개의 키가 동일하지 않으며 다중 집합에는 동일한 키 값이 있을 수 있습니다.

다중 집합 키는 이진 검색 트리를 구현하는 데 사용됩니다.

다중 집합::crbegin()이란 무엇입니까?

multiset::crbegin() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. crbegin()은 상수 역 시작 함수를 의미하며, 이 함수가 다중 집합 컨테이너의 마지막 요소를 가리키는 상수 반복자를 반환함을 의미합니다. 이 함수는 multiset::cbegin()

의 역 버전입니다.

상수 반복자는 다중 집합 컨테이너를 반복하는 데 사용할 수 있으며 다중 집합 컨테이너에서는 변경할 수 없습니다.

구문

ms_name.crbegin();

매개변수

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

반환 값

이 함수는 컨테이너의 마지막 요소를 가리키는 상수 반복자를 반환합니다.

예시

입력

std::multiset<int> mymultiset = {1, 2, 2, 3, 4};
mymultiset.crbegin();

출력

4

예시

#include <bits/stdc++.h>
using namespace std;
int main(){
   int arr[] = {10, 20, 30, 40, 50, 60};
   multiset<int> check(arr, arr + 6);
   cout<<"First element fetched using crbegin() function: "<<*(check.crbegin()) << endl;
   for(auto i = check.crbegin(); i!= check.crend(); i++)
      cout << *i << " ";
   return 0;
}

출력

First element fetched using crbegin() function: 60
60 50 40 30 20 10

다중 집합::crend()이란 무엇입니까?

multiset::crend() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. crend()는 상수 종료 함수를 의미하며 이 함수는 다중 집합 컨테이너의 첫 번째 요소 앞에 있는 요소를 가리키는 상수 반복자를 반환합니다. 이것은 cend()의 역 버전입니다.

상수 반복자는 다중 집합 컨테이너를 반복하는 데 사용할 수 있으며 다중 집합 컨테이너에서는 변경할 수 없습니다.

구문

ms_name.crend();

매개변수

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

반환 값

이 함수는 컨테이너의 첫 번째 요소보다 이전 요소를 가리키는 상수 반복자를 반환합니다.

예시

입력

std::multiset<int> mymultiset = {1, 2, 2, 3, 4};
mymultiset.crend();

출력

error

예시

#include <bits/stdc++.h>
using namespace std;
int main(){
   int arr[] = {10, 20, 30, 40, 50, 60};
   multiset<int> check(arr, arr + 6);
   cout<<"Elements in the list are: ";
   for(auto i = check.crbegin(); i!= check.crend(); i++)
      cout << *i << " ";
   return 0;
}

출력

Elements in the list are: 60 50 40 30 20 10