std::pmr::polymorphic_allocator<T>::allocate_bytes
来自cppreference.com
< cpp | memory | polymorphic
allocator
动态内存管理
|
std::pmr::polymorphic_allocator
成员函数 | ||||
(C++20
中弃用)
|
||||
polymorphic_allocator::allocate_bytes
(C++20)
|
||||
非成员函数 | ||||
(C++20
前)
|
[[nodiscard]]
void*
allocate_bytes( std::size_t
nbytes,
std::size_t alignment = alignof(std::max_align_t) ); |
(C++20 起) | |
分配按指定 alignment
对齐的 nbytes
字节存储。等价于
return resource()->allocate(nbytes, alignment);
。
参数
nbytes | - | 要分配的字节数 |
alignment | - | 使用的对齐 |
返回
指向分配的存储的指针。
注解
引入此函数是为了用于全特化分配器 std::polymorphic_allocator<> ,但它可能在任何特化中都有用。
返回类型为 void* (而非 std::byte* 之类),以支持通过 static_cast<U*> 转换到任意指针类型 U* 。
异常
可能抛出任何调用 resource()->allocate 所抛的异常。
参阅
(C++20)
|
分配适合单个对象或数组的未处理内存 (公开成员函数) |
(C++20)
|
分配并创建对象 (公开成员函数) |
分配内存 (公开成员函数) |
|
[静态]
|
用分配器分配未初始化的存储 ( std::allocator_traits<Alloc>
的公开静态成员函数) |
分配内存 ( std::pmr::memory_resource
的公开成员函数) |