std::numeric_limits<T>:: has_denorm_loss
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| Basic types | |||||||||||||||||||||
| Fixed width integer types (C++11) | |||||||||||||||||||||
| Fixed width floating-point types (C++23) | |||||||||||||||||||||
|
|||||||||||||||||||||
| Numeric limits | |||||||||||||||||||||
| C numeric limits interface | |||||||||||||||||||||
| Runtime type information | |||||||||||||||||||||
|
|||||||||||||||||||||
| Static constants | ||||
|
numeric_limits::has_denorm_loss
|
||||
|
(C++11)
|
||||
| Static member functions | ||||
|
(C++11)
|
||||
| Helper types | ||||
|
static
const
bool
has_denorm_loss
;
|
(C++11 이전) | |
|
static
constexpr
bool
has_denorm_loss
;
|
(C++11 이후)
(C++23에서 사용 중단됨) |
|
std::
numeric_limits
<
T
>
::
has_denorm_loss
의 값은
true
입니다. 이는 모든 부동소수점 타입
T
에 대해, 서브노멀 숫자를 생성할 때 정밀도 손실을 부정확한 결과가 아닌 비정규화 손실로 감지하는 경우에 해당합니다 (아래 참조).
목차 |
표준 특수화
T
|
std:: numeric_limits < T > :: has_denorm_loss 의 값 |
| /* non-specialized */ | false |
| bool | false |
| char | false |
| signed char | false |
| unsigned char | false |
| wchar_t | false |
| char8_t (C++20부터) | false |
| char16_t (C++11부터) | false |
| char32_t (C++11부터) | false |
| short | false |
| unsigned short | false |
| int | false |
| unsigned int | false |
| long | false |
| unsigned long | false |
| long long (C++11부터) | false |
| unsigned long long (C++11부터) | false |
| float | 구현 정의 |
| double | 구현 정의 |
| long double | 구현 정의 |
참고 사항
표준을 준수하는 IEEE 754 부동소수점 구현에서는 서브노멀 숫자의 생성과 관련된 정밀도 손실이 발생할 경우 이를 감지해야 하며, 다음 두 가지 방식 중 하나로 이를 수행할 수 있습니다:
- 비정규화 손실(Denormalization loss): 제공된 결과가 지수 범위가 무한정이었을 경우 계산되었을 결과와 다릅니다.
- 부정확한 결과(Inexact result): 제공된 결과가 지수 범위와 정밀도가 모두 무한정이었을 경우 계산되었을 결과와 다릅니다.
비정규화 손실 메커니즘의 구현이 존재하지 않으며 (부정확한 결과로 인해 반올림 후 정밀도 손실이 감지됨), 이 옵션은 IEEE Std 754의 2008년 개정판에서 제거되었습니다.
libstdc++, libc++, libCstd, stlport4는 모든 부동 소수점 타입에 대해 이 상수를 false 로 정의합니다. Microsoft Visual Studio는 모든 부동 소수점 타입에 대해 true 로 정의합니다.
모든 부동 소수점 연산과 마찬가지로, 정확도 손실이 발생하면 FE_INEXACT 가 발생할 수 있습니다.
예제
|
이 섹션은 불완전합니다
이유: 예제 없음 |
참고 항목
|
[static]
|
부동소수점 타입이 반올림 전에 아주 작은 값을 감지하는지 식별합니다
(public static member constant) |
|
[static]
|
부동소수점 타입이 사용하는 비정규화 스타일을 식별합니다
(public static member constant) |