libstdc++: std::__numeric_limits_base Struct Reference (original) (raw)

#include <[limits](a00128%5Fsource.html)>

Static Public Attributes
static constexpr int digits
static constexpr int digits10
static constexpr float_denorm_style has_denorm
static constexpr bool has_denorm_loss
static constexpr bool has_infinity
static constexpr bool has_quiet_NaN
static constexpr bool has_signaling_NaN
static constexpr bool is_bounded
static constexpr bool is_exact
static constexpr bool is_iec559
static constexpr bool is_integer
static constexpr bool is_modulo
static constexpr bool is_signed
static constexpr bool is_specialized
static constexpr int max_digits10
static constexpr int max_exponent
static constexpr int max_exponent10
static constexpr int min_exponent
static constexpr int min_exponent10
static constexpr int radix
static constexpr float_round_style round_style
static constexpr bool tinyness_before
static constexpr bool traps

Part of std::numeric_limits.

The static const members are usable as integral constant expressions.

Note

This is a separate 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 202 of file limits.

digits

constexpr int std::__numeric_limits_base::digits staticconstexpr

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 211 of file limits.

digits10

constexpr int std::__numeric_limits_base::digits10 staticconstexpr

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

Definition at line 214 of file limits.

has_denorm

See std::float_denorm_style for more information.

Definition at line 266 of file limits.

has_denorm_loss

constexpr bool std::__numeric_limits_base::has_denorm_loss staticconstexpr

True if loss of accuracy is detected as a denormalization loss, rather than as an inexact result.

Definition at line 270 of file limits.

has_infinity

constexpr bool std::__numeric_limits_base::has_infinity staticconstexpr

True if the type has a representation for positive infinity.

Definition at line 255 of file limits.

has_quiet_NaN

constexpr bool std::__numeric_limits_base::has_quiet_NaN staticconstexpr

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

Definition at line 259 of file limits.

has_signaling_NaN

constexpr bool std::__numeric_limits_base::has_signaling_NaN staticconstexpr

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

Definition at line 263 of file limits.

is_bounded

constexpr bool std::__numeric_limits_base::is_bounded staticconstexpr

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.

Definition at line 279 of file limits.

is_exact

constexpr bool std::__numeric_limits_base::is_exact staticconstexpr

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.

Definition at line 231 of file limits.

is_iec559

constexpr bool std::__numeric_limits_base::is_iec559 staticconstexpr

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 274 of file limits.

is_integer

constexpr bool std::__numeric_limits_base::is_integer staticconstexpr

True if the type is integer.

Definition at line 226 of file limits.

is_modulo

constexpr bool std::__numeric_limits_base::is_modulo staticconstexpr

True if the type is modulo. A type is modulo if, for any operation involving +, -, or * on values of that type whose result would fall outside the range [min(),max()], the value returned differs from the true value by an integer multiple of max() - min() + 1. On most machines, this is false for floating types, true for unsigned integers, and true for signed integers. See PR22200 about signed integers.

Definition at line 288 of file limits.

is_signed

constexpr bool std::__numeric_limits_base::is_signed staticconstexpr

True if the type is signed.

Definition at line 223 of file limits.

is_specialized

constexpr bool std::__numeric_limits_base::is_specialized staticconstexpr

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

Definition at line 206 of file limits.

max_digits10

constexpr int std::__numeric_limits_base::max_digits10 staticconstexpr

The number of base 10 digits required to ensure that values which differ are always differentiated.

Definition at line 219 of file limits.

max_exponent

constexpr int std::__numeric_limits_base::max_exponent staticconstexpr

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 248 of file limits.

max_exponent10

constexpr int std::__numeric_limits_base::max_exponent10 staticconstexpr

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

Definition at line 252 of file limits.

min_exponent

constexpr int std::__numeric_limits_base::min_exponent staticconstexpr

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 239 of file limits.

min_exponent10

constexpr int std::__numeric_limits_base::min_exponent10 staticconstexpr

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

Definition at line 243 of file limits.

radix

constexpr int std::__numeric_limits_base::radix staticconstexpr

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

Definition at line 235 of file limits.

round_style

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 299 of file limits.

tinyness_before

constexpr bool std::__numeric_limits_base::tinyness_before staticconstexpr

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

Definition at line 294 of file limits.

traps

constexpr bool std::__numeric_limits_base::traps staticconstexpr

True if trapping is implemented for this type.

Definition at line 291 of file limits.


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