Namespaces
Variants

std::pmr::memory_resource:: allocate

From cppreference.net
Memory management library
( exposition only* )
Allocators
Uninitialized memory algorithms
Constrained uninitialized memory algorithms
Memory resources
Uninitialized storage (until C++20)
( until C++20* )
( until C++20* )
( until C++20* )

Garbage collector support (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)
(C++11) (until C++23)
void * allocate ( std:: size_t bytes,
std:: size_t alignment = alignof ( std:: max_align_t ) ) ;
(C++17 起)

分配至少 bytes 字节的存储空间,并按指定的 alignment 进行对齐。

等价于 return do_allocate ( bytes, alignment ) ;

异常

如果无法获取请求大小和对齐方式的存储空间,则抛出异常。

缺陷报告

下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。

缺陷报告 适用范围 发布时的行为 正确行为
LWG 2843 C++17 允许不支持过度对齐 必须遵循对齐要求

参见

[virtual]
分配内存
(虚函数私有成员)