C++ std::is_trivially_destructible














































C++ std::is_trivially_destructible



/* Function:- Trait class that identifies whether T is a trivially destructible type. Trivially destructible types include scalar types, trivially copy constructible classes and arrays of such types. A trivially destructible class is a class (defined with class, struct or union) that: uses the implicitly defined destructor. the destructor is not virtual. its base class and non-static data members (if any) are themselves also trivially destructible types. The is_trivially_destructible class inherits from integral_constant as being either true_type or false_type, depending on whether T is trivially destructible. */ #include <iostream> #include <type_traits> struct A { }; struct B { ~B(){} }; int main() { std::cout << std::boolalpha; std::cout << "is_trivially_destructible:" << std::endl; std::cout << "int: " << std::is_trivially_destructible<int>::value << std::endl; std::cout << "A: " << std::is_trivially_destructible<A>::value << std::endl; std::cout << "B: " << std::is_trivially_destructible<B>::value << std::endl; return 0; } /* Output:- is_trivially_destructible: int: true A: true B: false */

Comments