38 stream <<
"Is A a base of B ? "
39 << std::is_base_of_v<A, B> <<
endl;
41 stream <<
"Is BaseWithVD a base of A ? "
42 << std::is_base_of_v<BaseWithVD, A> <<
endl;
44 stream <<
"Is A a base of BaseWithVD ? "
45 << std::is_base_of_v<A, BaseWithVD> <<
endl;
47 stream <<
"Is BaseWithoutVD a base of B ?"
48 << std::is_base_of_v<BaseWithoutVD, B> <<
endl;
50 stream <<
"Is B a base of BaseWithoutVD ?"
51 << std::is_base_of_v<B, BaseWithoutVD> <<
endl;
53 stream <<
"Has A a virtual destructor ? "
54 << std::has_virtual_destructor_v<A> <<
endl;
56 stream <<
"Has B a virtual destructor ? "
57 << std::has_virtual_destructor_v<B> <<
endl;
void test_virtual_destructor()
virtual ~BaseWithVD()=default
Stream output operators << are implemented.