std::pmr::polymorphic_allocator<T>::deallocate_object
< cpp | memory | polymorphic allocator
template <class U> void deallocate_object( U* p, std::size_t n = 1 ); |
(C++20 起) | |
解分配 p
所指向的存储,它必须从比较等于 *resource() 的 std::pmr::memory_resource x 用 x.allocate(n*sizeof(U), alignof(U)) 分配,通常通过调用 allocate_object<U>(n) 。
等价于 deallocate_bytes(p, n*sizeof(U), alignof(U)); 。
参数
p | - | 指向要解分配的内存的指针 |
n | - | 内存所用于的 U 类型对象数
|
异常
不抛出。
注意
引入此函数是为了用于全特化分配器 std::polymorphic_allocator<> ,但它可能在任何特化中都有用。
参阅
(C++20) |
释放从 allocate_bytes 获得的未处理内存 (公开成员函数) |
(C++20) |
销毁并解分配对象 (公开成员函数) |
[静态] |
用分配器解分配存储 ( std::allocator_traits<Alloc> 的公开静态成员函数) |
解分配内存 ( std::pmr::memory_resource 的公开成员函数) |