std::numeric_limits<T>::round_error
static T round_error() throw(); | (до C++11) | |
static constexpr T round_error() noexcept; | (с C++11) |
Возвращает максимальную возможную погрешность округления в ULP (единицах последнего разряда), определённую стандартом ISO 10967, которая может варьироваться от 0.5 (округление до ближайшего разряда) до 1.0 (округление до нуля или до бесконечности). Она имеет смысл только, если std::numeric_limits<T>::is_integer == false.
Значение результата
T | std::numeric_limits<T>::round_error() |
|---|---|
| /* неспециализированный */ | T() |
| bool | false |
| char | 0 |
| signed char | 0 |
| unsigned char | 0 |
| wchar_t | 0 |
| char8_t (с C++20) | 0 |
| char16_t (с C++11) | 0 |
| char32_t (с C++11) | 0 |
| short | 0 |
| unsigned short | 0 |
| int | 0 |
| unsigned int | 0 |
| long | 0 |
| unsigned long | 0 |
| long long (с C++11) | 0 |
| unsigned long long (с C++11) | 0 |
| float | 0.5F |
| double | 0.5 |
| long double | 0.5L |
См. также
|
[статический] | определяет стиль округления, используемый типом (публичная статическая константа) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/types/numeric_limits/round_error