命名空间
变体
操作

std::allocator_traits<Alloc>::destroy

来自 cppreference.com
 
 
动态内存管理
未初始化内存算法
受限的未初始化内存算法
分配器
垃圾收集支持
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)
(C++11)(until C++23)



 
 
定义在头文件 <memory>
template< class T >
static void destroy( Alloc& a, T* p );
(自 C++11)
(自 C++20 起为 constexpr)

调用由 p 指向的对象的析构函数。如果可能,通过调用 a.destroy(p) 来实现。如果不可能(例如,Alloc 不具有成员函数 destroy()),则直接调用 *p 的析构函数,如 p->~T()(until C++20)std::destroy_at(p)(since C++20).

内容

[编辑] 参数

a - 用于析构的分配器
p - 指向要析构的对象的指针

[编辑] 返回值

(无)

[编辑] 备注

由于此函数提供了对直接调用析构函数的自动回退,因此成员函数 destroy() 自 C++11 起成为可选的 Allocator 要求。

[编辑] 示例

[编辑] 另请参阅

(直到 C++20)
析构分配存储中的对象
(std::allocator<T> 的公有成员函数) [编辑]