C++ 具名要求:可析构 (Destructible)

< cpp‎ | named req
 
 
 

指定该类型的实例可被析构。

要求

以下情况下,类型 T 满足可析构 (Destructible)

给定

  • T 类型的表达式 u

则下列表达式必须合法且拥有其指定的效果

表达式 后条件
u.~T() u 所拥有的全部资源都得到回收,不抛异常。

注解

对象生存期结束(例如在离开作用域时或由于 delete 表达式)时隐式调用析构函数。如类型要求表中所示的显式析构函数调用是罕见的。

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

参阅

检查类型是否拥有未被弃置的析构函数
(类模板)