Open In App

unordered_multimap get_allocator in C++ STL

Last Updated : 20 Feb, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

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

Allocator_type get_allocator()

Parameters: This function does not accept any parameter. Return value: Returns an allocator associated with unordered_multimap. Below programs illustrate the working of unordered_multimap::get_allocator() function. Example-1: 

CPP




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


Output:

Is allocator Pair : true

Example-2: 

CPP




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


Output:

Allocated size = 64

Time complexity: O(1).

Auxiliary space: O(1).



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads