The class type_info describes type information generated by the typeid operator. The primary functions provided by type_info are equality, inequality, before and name. From <typeinfo.h>, the definition is:
class type_info {
public:
virtual ~type_info( );
bool operator==( const type_info &rhs ) const;
bool operator!=( const type_info &rhs ) const;
bool before( const type_info &rhs ) const;
const char *name( ) const;
private:
type_info( const type_info &rhs );
type_info &operator=( const type_info &rhs );
};
The before function compares two types relative to their implementation-dependent collation order. The name function returns an implementation-defined, null-terminated, multibyte string, suitable for conversion and display.
The constructor is a private member function, so you cannot create a variable of type type_info. The only source of type_info objects is in the typeid operator.