C++ concepts: Destructible
Specifies that an instance of the type can be default constructed.
The type must implement the following functions:
destructor: The destructor frees all resources owned by the object and it does not throw any exception.
| checks if a type has a non-deleted destructor |