C++ unordered_set - get_allocator() Function
The C++ unordered_set::get_allocator function returns a copy of allocator object associated with the given unordered_set.
Syntax
allocator_type get_allocator() const noexcept;
Parameters
None.
Return Value
Returns an allocator associated with the given unordered_set.
Time Complexity
Constant i.e, Θ(1).
Example:
In the example below, the unordered_set::get_allocator function returns a copy of same allocator object used by the unordered_set uSet.
#include <iostream> #include <unordered_set> using namespace std; int main (){ unordered_set<int> uSet; int *p; //allocate array with a memory to store 5 //elements using unordered_set's allocator p = uSet.get_allocator().allocate(5); //construct values in-place on the array for(int i=0; i<5; i++) uSet.get_allocator().construct(&p[i], 100*(i+1)); cout<<"The allocated array contains: "; for(int i=0; i<5; i++) cout<<p[i]<<" "; //destroy and deallocate the array for(int i=0; i<5; i++) uSet.get_allocator().destroy(&p[i]); uSet.get_allocator().deallocate(p,5); return 0; }
The output of the above code will be:
The allocated array contains: 100 200 300 400 500
❮ C++ <unordered_set> Library