<分区>
我的理解是,NaN(非数字)本质上是一个从数学函数返回的常量,表示出现问题或计算无效。因此,它们是检查数字是否为 NaN 或更好的函数是有意义的,使用 CERT 编码标准对数学错误 (https://www.securecoding.cert.org/confluence/display/c/FLP32-C.+Prevent+or+detect+domain+and+range+errors+in+math+functions) 进行错误检查。
我的问题是这样的;为什么 std::nan() 存在?为什么你会想要一个有效的数字/字符串/值并将其转换为 NaN? (引用:http://en.cppreference.com/w/cpp/numeric/math/nan)