# std::__numeric_limits_base Struct Reference

Inheritance diagram for std::__numeric_limits_base:

List of all members.

## Detailed Description

The `static` `const` members are usable as integral constant expressions.

Note:
  This is a seperate class for purposes of efficiency; you should only access these members as part of an instantiation of the std::numeric_limits class.

Definition at line 192 of file limits.

## Static Public Attributes

- static const int digits
- static const int digits10
- static const float_denorm_style has_denorm
- static const bool has_denorm_loss
- static const bool has_infinity
- static const bool has_quiet_NaN
- static const bool has_signaling_NaN
- static const bool is_bounded
- static const bool is_exact
- static const bool is_iec559
- static const bool is_integer
- static const bool is_modulo
- static const bool is_signed
- static const bool is_specialized
- static const int max_exponent
- static const int max_exponent10
- static const int min_exponent
- static const int min_exponent10
- static const int radix
- static const float_round_style round_style
- static const bool tinyness_before
- static const bool traps

## Member Data Documentation

const int std::__numeric_limits_base::digits`[static]`

The number of `radix` digits that be represented without change: for integer types, the number of non-sign bits in the mantissa; for floating types, the number of `radix` digits in the mantissa.

Definition at line 201 of file limits.

const int std::__numeric_limits_base::digits10`[static]`

The number of base 10 digits that can be represented without change.

Definition at line 203 of file limits.

const float_denorm_style std::__numeric_limits_base::has_denorm`[static]`

See std::float_denorm_style for more information.

Definition at line 244 of file limits.

const bool std::__numeric_limits_base::has_denorm_loss`[static]`

"True if loss of accuracy is detected as a denormalization loss, rather than as an inexact result." [18.2.1.2]/42

Definition at line 247 of file limits.

const bool std::__numeric_limits_base::has_infinity`[static]`

True if the type has a representation for positive infinity.

Definition at line 236 of file limits.

const bool std::__numeric_limits_base::has_quiet_NaN`[static]`

True if the type has a representation for a quiet (non-signaling) "Not a Number."

Definition at line 239 of file limits.

const bool std::__numeric_limits_base::has_signaling_NaN`[static]`

True if the type has a representation for a signaling "Not a Number."

Definition at line 242 of file limits.

const bool std::__numeric_limits_base::is_bounded`[static]`

"True if the set of values representable by the type is finite. All built-in types are bounded, this member would be false for arbitrary precision types." [18.2.1.2]/54

Definition at line 255 of file limits.

const bool std::__numeric_limits_base::is_exact`[static]`

True if the type uses an exact representation. "All integer types are exact, but not all exact types are integer. For example, rational and fixed-exponent representations are exact but not integer." [18.2.1.2]/15

Definition at line 216 of file limits.

const bool std::__numeric_limits_base::is_iec559`[static]`

True if-and-only-if the type adheres to the IEC 559 standard, also known as IEEE 754. (Only makes sense for floating point types.)

Definition at line 251 of file limits.

const bool std::__numeric_limits_base::is_integer`[static]`

True if the type is integer.

Definition at line 211 of file limits.

const bool std::__numeric_limits_base::is_modulo`[static]`

True if the type is modulo, that is, if it is possible to add two positive numbers and have a result that wraps around to a third number that is less. Typically false for floating types, true for unsigned integers, and true for signed integers.

Definition at line 260 of file limits.

const bool std::__numeric_limits_base::is_signed`[static]`

True if the type is signed.

Definition at line 205 of file limits.

const bool std::__numeric_limits_base::is_specialized`[static]`

This will be true for all fundamental types (which have specializations), and false for everything else.

Definition at line 196 of file limits.

const int std::__numeric_limits_base::max_exponent`[static]`

The maximum positive integer such that `radix` raised to the power of (one less than that integer) is a representable finite floating point number.

Definition at line 230 of file limits.

const int std::__numeric_limits_base::max_exponent10`[static]`

The maximum positive integer such that 10 raised to that power is in the range of representable finite floating point numbers.

Definition at line 233 of file limits.

const int std::__numeric_limits_base::min_exponent`[static]`

The minimum negative integer such that `radix` raised to the power of (one less than that integer) is a normalized floating point number.

Definition at line 223 of file limits.

const int std::__numeric_limits_base::min_exponent10`[static]`

The minimum negative integer such that 10 raised to that power is in the range of normalized floating point numbers.

Definition at line 226 of file limits.

const int std::__numeric_limits_base::radix`[static]`

For integer types, specifies the base of the representation. For floating types, specifies the base of the exponent representation.

Definition at line 219 of file limits.

const float_round_style std::__numeric_limits_base::round_style`[static]`

See std::float_round_style for more information. This is only meaningful for floating types; integer types will all be round_toward_zero.

Definition at line 269 of file limits.

const bool std::__numeric_limits_base::tinyness_before`[static]`

True if tinyness is detected before rounding. (see IEC 559)

Definition at line 265 of file limits.

const bool std::__numeric_limits_base::traps`[static]`

True if trapping is implemented for this type.

Definition at line 263 of file limits.

The documentation for this struct was generated from the following file:

- limits