29 lines
810 B
Markdown
29 lines
810 B
Markdown
[polymorphic.dtor]
|
||
|
||
# 20 Memory management library [[mem]](./#mem)
|
||
|
||
## 20.4 Types for composite class design [[mem.composite.types]](mem.composite.types#polymorphic.dtor)
|
||
|
||
### 20.4.2 Class template polymorphic [[polymorphic]](polymorphic#dtor)
|
||
|
||
#### 20.4.2.4 Destructor [polymorphic.dtor]
|
||
|
||
[ð](#lib:polymorphic,destructor)
|
||
|
||
`constexpr ~polymorphic();
|
||
`
|
||
|
||
[1](#1)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L7216)
|
||
|
||
*Mandates*: T is a complete type[.](#1.sentence-1)
|
||
|
||
[2](#2)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/memory.tex#L7220)
|
||
|
||
*Effects*: If *this is not valueless,
|
||
destroys the owned object using allocator_traits<Allocator>::destroy and
|
||
then the storage is deallocated[.](#2.sentence-1)
|