...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
template <class T>
struct is_compound : public true_type-or-false_type
{};
Inherits: If T is a (possibly cv-qualified) compound type then inherits from true_type, otherwise inherits from false_type. Any type that is not a fundamental type is a compound type (see also is_fundamental).
C++ Standard Reference: 3.9.2.
Compiler Compatibility: All current compilers are supported by this trait.
Header: #include
<boost/type_traits/is_compound.hpp>
or #include <boost/type_traits.hpp>
Examples:
is_compound<MyClass>
inherits fromtrue_type
.
is_compound<MyEnum>::type
is the typetrue_type
.
is_compound<int*>::value
is an integral constant expression that evaluates to true.
is_compound<int&>::value
is an integral constant expression that evaluates to true.
is_compound<int>::value
is an integral constant expression that evaluates to false.
is_compound<T>::value_type
is the typebool
.