命名空间
变体
操作

std::allocator<T>::destroy

来自 cppreference.cn
< cpp‎ | memory‎ | allocator
 
 
内存管理库
(仅为阐释*)
未初始化内存算法
(C++17)
(C++17)
(C++17)
受约束的未初始化
内存算法
C 库

分配器
内存资源
垃圾回收支持
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
(C++11)(直到 C++23)
未初始化存储
(直到 C++20*)
(直到 C++20*)
显式生命周期管理
 
 
定义于头文件 <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++ 标准。

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

[编辑] 参见

[静态]
析构存储在已分配存储中的对象
(函数模板) [编辑]