template <class T>
struct is_const : public true_type-or-false_type {};
Наследования: Если T является (верхний уровень) конст-квалифицированным типом, то наследует от True_type, иначе наследует от false_type.
C++ Standard Reference: 3.9.3.
Заведующий: #include <boost/type_traits/is_const.hpp>>>>>>>>>>>
Совместимость компилятора: Все нынешние компиляторы поддерживаются этой чертой.
Примеры:
is_const<int const volatile>::type является типом true_type.
is_const<int* const>:: value является неотъемлемым постоянным выражением, которое оценивает до true.
is_const<int const*>:: value является неотъемлемым постоянным выражением, которое оценивает до false: констант-кавалификатор не находится на верхнем уровне в данном случае.
is_const<int const&>:: value является неотъемлемым постоянным выражением, которое оценивает до false: констант-кавалификатор не находится на верхнем уровне в этом случае.
is_const<int>:: value является неотъемлемым постоянным выражением, которое оценивает до false.
is_const<T>:: value_type - это тип bool.