Difference between revisions of "cpp/memory/polymorphic allocator"
From cppreference.com
(+) |
(added link to memory_resource into "see also" block) |
||
Line 32: | Line 32: | ||
{{dsc begin}} | {{dsc begin}} | ||
{{dsc inc | cpp/memory/polymorphic_allocator/dsc operator eq}} | {{dsc inc | cpp/memory/polymorphic_allocator/dsc operator eq}} | ||
+ | {{dsc end}} | ||
+ | |||
+ | ===See also=== | ||
+ | {{dsc begin}} | ||
+ | {{dsc inc | cpp/memory/dsc memory_resource}} | ||
{{dsc end}} | {{dsc end}} |
Revision as of 09:36, 18 April 2016
Defined in header <memory_resource>
|
||
template< class T > class polymorphic_allocator; |
(since C++17) | |
The class template std::pmr::polymorphic_allocator
is an Template:concept 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 |
Member types
Member type | definition |
value_type
|
T
|
Member functions
constructs a polymorphic_allocator (public member function) | |
(destructor) (implicitly declared) |
implicitly declared destructor (public member function) |
operator= [deleted] |
copy assignment operator is deleted (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) | |
(deprecated in C++20)(undeprecated in C++26) |
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) |
Non-member functions
(removed in C++20) |
compare two polymorphic_allocator s (function) |
See also
(C++17) |
an abstract interface for classes that encapsulate memory resources (class) |