std::numeric_limits<T>::is_iec559

来自cppreference.com
 
 
 
 
 
static const bool is_iec559;
(C++11 前)
static constexpr bool is_iec559;
(C++11 起)

std::numeric_limits<T>::is_iec559 的值对于所有符合 IEC 559(IEEE 754)标准要求的浮点数类型 T 都是 true。如果 std::numeric_limits<T>::is_iec559true,那么 std::numeric_limits<T>::has_infinitystd::numeric_limits<T>::has_quiet_NaNstd::numeric_limits<T>::has_signaling_NaN 也是 true

[编辑] 标准特化

T std::numeric_limits<T>::is_iec559 的值
/* 未特化 */ 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 通常是 true
double 通常是 true
long double 通常是 true

[编辑] 参阅

鉴别能表示特殊值“正无穷大”的浮点数类型
(公开静态成员常量) [编辑]
鉴别能表示特殊值“安静的非数”(NaN)的浮点数类型
(公开静态成员常量) [编辑]
鉴别能表示特殊值“发信的非数”(NaN)的浮点数类型
(公开静态成员常量) [编辑]