std::isunordered
来自cppreference.com
                    
                                        
                    
                    
                                                            
                    |   在标头  <cmath> 定义
  | 
||
| (1) | ||
|   bool isunordered( float x, float y ); bool isunordered( double x, double y );  | 
 (C++11 起)  (C++23 前)  | 
|
|   constexpr bool isunordered( /* 浮点类型 */ x, /* 浮点类型 */ y );  | 
(C++23 起) | |
|   在标头  <cmath> 定义
  | 
||
|   template< class Arithmetic1, class Arithmetic2 > bool isunordered( Arithmetic1 x, Arithmetic2 y );  | 
(A) |  (C++11 起)  (C++23 起 constexpr)  | 
1) 确定两个浮点数 x 与 y 是否无序,即一或两者为 NaN,从而无法有意义地彼此比较。标准库提供所有以无 cv 限定的浮点类型作为参数 x 和 y 的类型的重载。 (C++23 起)
A) 为算术类型的所有其他组合提供额外重载。
参数
| x, y | - | 浮点或整数值 | 
返回值
在 x 或 y 为 NaN 时返回 true,否则返回 false。
注解
额外重载不需要以 (A) 的形式提供。它们只需要能够对它们的第一个实参 num1 和第二个实参 num2 满足以下要求:
  | 
(C++23 前) | 
| 
 如果 num1 和 num2 具有算术类型,那么 std::isunordered(num1, num2) 和 std::isunordered(static_cast</* 公共浮点类型 */>(num1), 如果不存在等级和子等级最高的浮点类型,那么在重载决议时不会从提供的重载中产生可用的候选。  | 
(C++23 起) | 
参阅
|    (C++11)  | 
  归类给定的浮点值  (函数)  | 
|    (C++11)  | 
   检查给定的数是否 NaN  (函数)  |