[optional.dtor]

# 22 General utilities library [[utilities]](./#utilities)

## 22.5 Optional objects [[optional]](optional#dtor)

### 22.5.3 Class template optional [[optional.optional]](optional.optional#optional.dtor)

#### 22.5.3.3 Destructor [optional.dtor]

[ð](#lib:optional,destructor)

`constexpr ~optional();
`

[1](#1)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/utilities.tex#L3649)

*Effects*: If is_trivially_destructible_v<T> != true and *this contains a value, callsval->T::~T()

[2](#2)

[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/utilities.tex#L3656)

*Remarks*: If is_trivially_destructible_v<T> is true, then this destructor is trivial[.](#2.sentence-1)
