cpp/types/numeric limits

The class template provides a standardized way to query various properties of arithmetic types (e.g. the largest possible value for type  is ).

This information is provided via specializations of the template. The makes available specializations for all arithmetic types (only lists the specializations for cv-unqualified arithmetic types):

The value of each member of a specialization of on a cv-qualified type cv  is equal to the value of the corresponding member of the specialization on the unqualified type. For example, is equal to.

Aliases of arithmetic types (such as std or std) may also be examined with the type traits.

Non-arithmetic standard types, such as or std, do not have specializations.

Implementations may provide specializations of for implementation-specific types: e.g. GCC provides. Non-standard libraries may add specializations for library-provided types, e.g. OpenEXR provides for a 16-bit floating-point type.