命名空间
变体
操作

C++ 命名要求: 可析构

来自 cppreference.cn
 
 
C++ 命名要求
 

指明类型的实例可以被析构。

[编辑] 要求

类型 T 满足 可析构 如果

给定

  • u,类型 T 的表达式。

以下表达式必须有效并具有其指定的效应。

表达式 后置条件
u.~T() u 拥有的所有资源都被回收,不抛出任何异常。

[编辑] 注释

析构函数在 对象生存期 结束时隐式调用,例如当离开作用域 或通过 delete 表达式。如类型要求表所示的显式析构函数调用很少见。

感谢 伪析构函数调用,所有标量类型都满足 可析构 的要求,而数组类型和引用类型则不满足。请注意,std::is_destructible 允许数组和引用类型。

[编辑] 参见

检查类型是否具有非删除的析构函数
(类模板) [编辑]
(C++20)
指明类型的对象可以被销毁
(概念) [编辑]