std::pmr::polymorphic_allocator

From cppreference.com
< cpp‎ | memory
 
 
 
 
Defined in header <memory_resource>
template< class T >
class polymorphic_allocator;
(since C++17)

The class template std::pmr::polymorphic_allocator is an Allocator whose allocation behavior depends on the memory resource it is constructed with. Thus, different instances of polymorphic_allocator can exhibit entirely different allocation behavior. This runtime polymorphism allows objects using polymorphic_allocator to behave as if they used different allocator types at run time despite the identical static allocator type.

Contents

[edit] Member types

Member type definition
value_type T

[edit] Member functions

Constructs a polymorphic_allocator
(public member function)
(destructor)
(implicitly declared)
Implicitly declared destructor
(public member function)
Copy assignment operator
(public member function)
Public member functions
Allocate memory
(public member function)
Deallocate memory
(public member function)
Constructs an object in allocated storage
(public member function)
Destroys an object in allocated storage
(public member function)
Create a new polymorphic_allocator for use by a container's copy constructor
(public member function)
Returns a pointer to the underlying memory resource
(public member function)

[edit] Non-member functions

compare two polymorphic_allocators
(function)

[edit] See also

an abstract interface for classes that encapsulate memory resources
(class)