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

C++ STL에서 get_allocator() 설정

<시간/>

이 기사에서는 C++ STL의 set::get_allocator() 함수, 구문, 작업 및 반환 값에 대해 설명합니다.

C++ STL에서 무엇을 설정합니까?

C++ STL의 집합은 일반적인 순서로 고유한 요소를 가져야 하는 컨테이너입니다. 요소의 값이 요소를 식별하므로 집합에는 고유한 요소가 있어야 합니다. 집합 컨테이너에 값을 추가하면 나중에 수정할 수 없지만 집합에 값을 제거하거나 추가할 수는 있습니다. 집합은 이진 검색 트리로 사용됩니다.

무엇이 설정되어 있습니까::get_allocator()?

get_allocator() 함수는 헤더 파일에 정의된 C++ STL의 내장 함수입니다. 이 함수는 관련된 집합 컨테이너의 할당자 개체 복사본을 반환합니다. get_allocator()는 메모리 청크를 설정된 컨테이너에 할당하는 데 사용됩니다.

Allocator는 설정된 컨테이너의 동적으로 메모리 할당을 담당하는 객체입니다.

구문

Set1.get_allocator();

매개변수

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

반환 값

이 함수는 할당자 또는 해당 개체가 함수와 연결된 할당자의 복사본을 반환합니다.

예시

#include <iostream>
#include <set>
using namespace std;
void input(int* arr){
   for(int i = 0; i <= 5; i++)
   arr[i] = i;
}
void output(int* arr){
   for (int i = 0; i <= 5; i++)
   cout << arr[i] << " ";
   cout << endl;
}
int main(){
   set<int> mySet;
   int* arr;
   arr = mySet.get_allocator().allocate(6);
   input(arr);
   output(arr);
   mySet.get_allocator().deallocate(arr, 6);
   return 0;
}

출력

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

0 1 2 3 4 5