std::pmr::memory_resource:: do_allocate
From cppreference.net
<
cpp
|
memory
|
memory resource
C++
Memory management library
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
std::pmr::memory_resource
| Public member functions | ||||
| Private member functions | ||||
|
memory_resource::do_allocate
|
||||
| Non-member functions | ||||
|
(until C++20)
|
|
virtual
void
*
do_allocate
(
std::
size_t
bytes,
std::
size_t
alignment
)
=
0
;
|
(C++17 起) | |
分配至少 bytes 字节的存储空间,并按指定的 alignment 进行对齐。
alignment 应为 2 的幂。
异常
如果无法获取请求大小和对齐方式的存储空间,则抛出异常。
缺陷报告
下列行为变更缺陷报告被追溯应用于先前发布的 C++ 标准。
| 缺陷报告 | 适用范围 | 发布时的行为 | 正确行为 |
|---|---|---|---|
| LWG 2843 | C++17 | 对不支持的对齐处理方式存在矛盾 | 抛出异常 |
参见
|
分配内存
(公开成员函数) |