< cpp‎ | concepts
Defined in header <concepts>
template < class T >
concept Destructible = std::is_nothrow_destructible_v<T>;
(since C++20)

The concept Destructible specifies the concept of all types whose instances can safely be destroyed at the end of their lifetime (including reference types).


Unlike the Destructible named requirement, std::Destructible requires the destructor to be noexcept(true), not merely non-throwing when invoked, and allows reference types and array types.

See also

checks if a type has a non-deleted destructor
(class template)