std::pmr::memory_resource::do_allocate -
std::pmr::memory_resource::do_allocate
virtual void* do_allocate( std::size_t bytes, std::size_t
alignment ) (since C++17)
= 0;
Allocates storage with a size of at least bytes bytes, aligned to the
specified
alignment.
alignment shall be a power of two.
Throws an exception if storage of the requested size and
alignment cannot be
obtained.
Defect reports
The following behavior-changing defect reports were applied retroactively to
previously published C++ standards.
DR Applied to Behavior as published Correct behavior
LWG 2843 C++17 handling of unsupported alignment throws an exception
contradictory
allocate allocates memory
(public member function)