std::pmr::memory_resource::allocate

From cppreference.com
< cpp‎ | memory‎ | memory resource
Memory management library
(exposition only*)
Uninitialized memory algorithms
(C++17)
(C++17)
(C++17)
(C++20)
Constrained uninitialized
memory algorithms
(C++20)
C Library

Allocators
(C++11)
(C++11)
Memory resources
Garbage collection support
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
Uninitialized storage
(until C++20*)
(until C++20*)
(until C++20*)
Explicit lifetime management
void * allocate( std::size_t bytes,
std::size_t alignment = alignof( std::max_align_t ) ) ;
(since C++17)

Allocates storage with a size of at least bytes bytes, aligned to the specified alignment.

Equivalent to return do_allocate(bytes, alignment);.

Exceptions

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 over-alignment was allowed to be unsupported alignment must be honoured

See also

[virtual]
allocates memory
(virtual private member function)