std::experimental::pmr::polymorphic_allocator (3) - Linux Manuals

std::experimental::pmr::polymorphic_allocator: std::experimental::pmr::polymorphic_allocator


std::experimental::pmr::polymorphic_allocator - std::experimental::pmr::polymorphic_allocator


Defined in header <experimental/memory_resource>
template< class T > (library fundamentals TS)
class polymorphic_allocator;

The class template std::experimental::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.

Member types

Member type definition
value_type T

Member functions

                                      Constructs a polymorphic_allocator
constructor (public member function)

destructor Implicitly declared destructor
                                      (public member function)
(implicitly declared)
                                      Copy assignment operator
operator= (public member function)

Public member functions

                                      Allocate memory
allocate (public member function)
                                      Deallocate memory
deallocate (public member function)
                                      Constructs an object in allocated storage
construct (public member function)
                                      Destroys an object in allocated storage
destroy (public member function)
                                      Create a new polymorphic_allocator for use by a container's copy constructor
select_on_container_copy_construction (public member function)
                                      Returns a pointer to the underlying memory resource
resource (public member function)

Non-member functions

           compare two polymorphic_allocators
operator== (function)