std::pmr::polymorphic_allocator<T>::allocate_bytes
来自 cppreference.cn
< cpp | memory | polymorphic allocator
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::pmr::polymorphic_allocator<> 一起使用而引入的,但它在任何特化中都可能有用。
返回类型是 void* (而不是,例如, std::byte*) 以支持通过 static_cast<U*> 转换为任意指针类型 U*。
[编辑] 异常
可能抛出对 resource()->allocate 的调用抛出的任何异常。
[编辑] 参见
(C++20) |
分配适用于对象或数组的原始内存 (公共成员函数) |
(C++20) |
分配并构造一个对象 (公共成员函数) |
分配内存 (公共成员函数) | |
[静态] |
使用分配器分配未初始化的存储 ( std::allocator_traits<Alloc> 的公共静态成员函数) |
分配内存 ( std::pmr::memory_resource 的公共成员函数) |