Namespaces
Variants

std::allocator<T>::destroy

来自 zh.cppreference.net
 
 
内存管理库
分配器
内存资源
未初始化存储 (直至 C++20*)
垃圾回收器支持 (直至 C++23)
 
 
定义于头文件 <memory>
void destroy( pointer p );
(1) (直至 C++11)
template< class U >
void destroy( U* p );
(2) (自 C++11 起)
(在 C++17 中弃用)
(在 C++20 中移除)

调用 p 所指向对象的析构函数。

1) 调用 p->~T()。
2) 调用 p->~U()。

参数

p - 指向即将被销毁对象的指针

缺陷报告

下列行为变更缺陷报告被追溯应用于先前发布的C++标准。

缺陷报告 应用于 发布时行为 正确行为
LWG 400 C++98 p 被强制转换为 T* ,即 p 的类型 移除了冗余的强制转换

参见

[static]
销毁分配存储中的对象
(函数模板)