Namespaces
Variants

std::experimental::optional<T>:: ~optional

From cppreference.net
~optional ( ) ;
(库基础技术规范)

若对象包含值且类型 T 非可平凡析构(参见 std::is_trivially_destructible ),则通过调用其析构函数销毁所含值,如同执行 val - > T :: ~T ( )

否则,不执行任何操作。

注释

如果 T 是平凡可析构的,那么此析构函数也是平凡的,因此 optional<T> 也是平凡可析构的。