std::allocator_traits<Alloc>::destroy

来自cppreference.com
 
 
动态内存管理
未初始化存储
(C++17)
垃圾收集支持
杂项
(C++20)
(C++11)
(C++11)
C 库
低层内存管理
 
 
定义于头文件 <memory>
template< class T >
static void destroy( Alloc& a, T* p );
(C++11 起)

调用 p 所指向对象的析构函数。若可能,则通过调用 a.destroy(p) 这么做。若不可能(例如 a 无成员函数 destroy() ),则直接调用 *p 的析构函数,同 p->~T()

参数

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

返回值

(无)

注意

因为此函数提供到析构函数的自动回落,故 C++11 起成员函数 destroy()分配器 (Allocator) 的可选要求。

参阅

(C++17 中弃用)(C++20 中移除)
析构在已分配存储中的对象
(std::allocator<T> 的公开成员函数)