Namespaces
Variants

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

From cppreference.net
~optional ( ) ;
(библиотека fundamentals TS)

Если объект содержит значение и тип T не является тривиально разрушаемым (см. std::is_trivially_destructible ), уничтожает содержащееся значение путем вызова его деструктора, как если бы val - > T :: ~T ( ) .

В противном случае ничего не делает.

Примечания

Если T является тривиально-разрушаемым, то этот деструктор также тривиален, поэтому optional<T> также является тривиально-разрушаемым.