Boost C++ Libraries

...one of the most highly regarded and expertly designed C++ library projects in the world. Herb Sutter and Andrei Alexandrescu, C++ Coding Standards

This is the documentation for an old version of Boost. Click here to view this page for the latest version.

libs/type_traits/doc/is_compound.qbk

[/ 
  Copyright 2007 John Maddock.
  Distributed under the Boost Software License, Version 1.0.
  (See accompanying file LICENSE_1_0.txt or copy at
  http://www.boost.org/LICENSE_1_0.txt).
]

[section:is_compound is_compound]
   template <class T>
   struct is_compound : public __tof {};
  
__inherit 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).

__std_ref 3.9.2.

__header ` #include <boost/type_traits/is_compound.hpp>` or ` #include <boost/type_traits.hpp>`

__examples

[:`is_compound<MyClass>` inherits from `__true_type`.]

[:`is_compound<MyEnum>::type` is the type `__true_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 type `bool`.]

[endsect]