Die Schablonenklasse std::numeric_limits<T>
bietet eine
einheitliche Schnittstelle für Größeninformationen,
die für eigene numerische Typen spezialisiert werden kann.
std::cout << std::numeric_limits<int>::digits << " Bits, " << std::numeric_limits<int>::min() << "..." << std::numeric_limits<int>::max() << '\n';
Die Klasse ist eine Sammlung von Konstanten und Abfragemethoden:
is_specialized | Angaben für diesen Typ verfügbar |
min() | kleinster Wert, bei Gleitkommatypen kleinster positiver Wert |
max() | größter Wert |
digits | Anzahl Ziffern im Basissystem |
digits10() | Anzahl Ziffern im Dezimalsystem |
is_signed | ist vorzeichenbehaftet |
is_integer | ist ganzzahlig |
is_bounded | ist beschränkt |
is_exact | alle Werte sind exakt darstellbar |
is_modulo | Summe positiver Werte kann negativ werden (Überlauf) |
radix | Zahlenbasis (meist 2) |
min_exponent | kleinste Ganzzahl e mit pow(radix,e) im Wertebereich |
max_exponent | größte Ganzzahl e mit pow(radix,e) im Wertebereich |
min_exponent10 | dto. mit pow(10,e) |
max_exponent10 | |
has_infinity | Darstellung für "unendlich" verfügbar |
infinity() | Wert "unendlich" |
epsilon() | kleinste Zahl e mit 1+e > 1 bei Gleitkommazahlen |
round_error() | maximaler Rundungsfehler |
round_style | Art der Rundung: |
round_indeterminate , |
|
round_toward_zero , |
|
round_to_nearest , |
|
round_toward_infinity , |
|
round_toward_neg_infinity |
|
und weitere | Gleitkomma-Eigenschaften nach Norm IEEE 754 = IEC 559 |