Open In App

map get_allocator in C++ STL

Last Updated : 19 Dec, 2018
Improve
Improve
Like Article
Like
Save
Share
Report

map::get_allocator() is a built in function in C++ STL which is used to get allocator of container map.
Syntax:

Allocator_type get_allocator()

Parameters: This function does not accept any parameter.
Return value: Returns an allocator associated with map.

Below programs explains clearly the map::get_allocator() function.
Example-1:




// CPP program to illustrate
// map get_allocator()
#include <bits/stdc++.h>
using namespace std;
int main()
{
  
    //'mp' is object of 'map'
    map<int, int> mp;
  
    //'allocator_type' is inherit in 'map'
    //'m' is object of 'allocator_type'
    map<int, int>::allocator_type m = mp.get_allocator();
  
    // Comparing the Allocator with Pair<int, int>
    cout << "Is allocator Pair<int, int> : "
         << boolalpha
         << (m == allocator<pair<int, int> >());
  
    return 0;
}


Output:

Is allocator Pair : true

Example-2:




// CPP program to illustrate
// map get_allocator()
#include <bits/stdc++.h>
using namespace std;
  
int main(void)
{
    map<char, int> m;
    pair<const char, int>* a;
  
    a = m.get_allocator().allocate(8);
  
    cout << "Allocated size = " << sizeof(*a) * 8 << endl;
  
    return 0;
}


Output:

Allocated size = 64


Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads