std::pmr::polymorphic_allocator<T>::deallocate_object
来自 cppreference.cn
< cpp | memory | 多态分配器 (polymorphic allocator)
template< class U > void deallocate_object( U* p, std::size_t n = 1 ); |
(C++20 起) | |
释放 p 指向的存储,该存储必须是通过 std::pmr::memory_resource x(与 *resource() 比较相等)分配的,分配方式为使用 x.allocate(n * sizeof(U), alignof(U)),通常是通过调用 allocate_object<U>(n) 完成的。
等价于 deallocate_bytes(p, n * sizeof(U), alignof(U));。
目录 |
[编辑] 参数
p | - | 指向要释放的内存的指针 |
n | - | 内存用于的 U 类型对象的数量 |
[编辑] 异常
不抛出任何异常。
[编辑] 注意
此函数是为与完全特化分配器 std::pmr::polymorphic_allocator<> 配合使用而引入的,但它可能在任何特化中都很有用。
[编辑] 参阅
(C++20) |
释放从 allocate_bytes 获取的原始内存(公共成员函数) |
(C++20) |
销毁并释放一个对象 (公共成员函数) |
[静态] |
使用分配器释放存储 ( std::allocator_traits<Alloc> 的公共静态成员函数) |
释放内存 ( std::pmr::memory_resource 的公共成员函数) |