polymorphic_allocator | ||||
Convenience aliases for containers usingpolymorphic_allocator | ||||
| Memory resource classes | ||||
| Global memory resources | ||||
| Type-erased allocator support for existing classes | ||||
| Member functions | ||||
| Non-member functions | ||||
![]() | Merged into ISO C++ The functionality described on this page was merged into the mainline ISO C++ standard as of 3/2016, seestd::pmr::polymorphic_allocator(since C++17) |
Defined in header <experimental/memory_resource> | ||
template<class T> class polymorphic_allocator; | (library fundamentals TS) | |
The class templatestd::experimental::pmr::polymorphic_allocator is anAllocator whose allocation behavior depends on the memory resource it is constructed with. Thus, different instances ofpolymorphic_allocator can exhibit entirely different allocation behavior. This runtime polymorphism allows objects usingpolymorphic_allocator to behave as if they used different allocator types at run time despite the identical static allocator type.
Contents |
| Member type | definition |
value_type | T |
constructs apolymorphic_allocator(public member function)[edit] | |
(destructor) (implicitly declared) | implicitly declared destructor (public member function)[edit] |
| copy assignment operator (public member function)[edit] | |
Public member functions | |
| allocate memory (public member function)[edit] | |
| deallocate memory (public member function)[edit] | |
| constructs an object in allocated storage (public member function)[edit] | |
| destroys an object in allocated storage (public member function)[edit] | |
create a newpolymorphic_allocator for use by a container's copy constructor(public member function)[edit] | |
| returns a pointer to the underlying memory resource (public member function)[edit] | |
compare twopolymorphic_allocators(function)[edit] |