命名空间
变体
操作

std::pmr::polymorphic_allocator<T>::deallocate_object

来自 cppreference.cn
 
 
内存管理库
(仅作说明*)
未初始化内存算法
受约束的未初始化
内存算法
C 库

分配器
内存资源
垃圾回收支持
(C++11)(直到 C++23)
未初始化存储
显式生命周期管理
智能指针
低级内存
管理
杂项
 
 
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<> 配合使用而引入的,但它可能在任何特化中都很有用。

[编辑] 参阅

释放从 allocate_bytes 获取的原始内存
(公共成员函数) [编辑]
销毁并释放一个对象
(公共成员函数) [编辑]
使用分配器释放存储
(std::allocator_traits<Alloc> 的公共静态成员函数) [编辑]
释放内存
(std::pmr::memory_resource 的公共成员函数) [编辑]