20 General utilities library [utilities]

20.15 Metaprogramming and type traits [meta]

20.15.5 Unary type traits [meta.unary]

20.15.5.3 Composite type traits [meta.unary.comp]

Table 48: Composite type category predicates [tab:meta.unary.comp]
Template
Condition
Comments
template<class T>
struct is_­reference;
T is an lvalue reference or an rvalue reference
template<class T>
struct is_­arithmetic;
T is an arithmetic type ([basic.fundamental])
template<class T>
struct is_­fundamental;
T is a fundamental type ([basic.fundamental])
template<class T>
struct is_­object;
T is an object type ([basic.types])
template<class T>
struct is_­scalar;
T is a scalar type ([basic.types])
template<class T>
struct is_­compound;
T is a compound type ([basic.compound])
template<class T>
struct is_­member_­pointer;
T is a pointer-to-member type