Namespaces
Variants

std::pmr::memory_resource:: do_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)
virtual void * do_allocate ( std:: size_t bytes, std:: size_t alignment ) = 0 ;
(C++17 起)

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

alignment 应为 2 的幂。

异常

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

缺陷报告

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

缺陷报告 适用范围 发布时的行为 正确行为
LWG 2843 C++17 对不支持的对齐处理方式存在矛盾 抛出异常

参见

分配内存
(公开成员函数)