std::pmr::polymorphic_allocator<T>::allocate

来自cppreference.com
 
 
动态内存管理
未初始化存储
(C++17)
垃圾收集支持
杂项
(C++20)
(C++11)
(C++11)
C 库
低层内存管理
 
 
T* allocate( std::size_t n );
(C++17 起)
(C++20 前)
[[nodiscard]] T* allocate( std::size_t n );
(C++20 起)

用底层的 memory_resource 分配 nT 类型对象的存储。等价于 return static_cast<T*>(resource()->allocate(n * sizeof(T), alignof(T)));

参数

n - 要分配存储的对象数

返回值

指向被分配存储的指针。

异常

n > SIZE_MAX / sizeof(T) 则抛出 std::length_error ;亦可抛出调用 resource()->allocate 所抛的任何异常。

参阅

[静态]
用分配器分配未初始化的存储
(std::allocator_traits<Alloc> 的公开静态成员函数)
分配内存
(std::pmr::memory_resource 的公开成员函数)