有意返回 NaN
Intentionally return NaN
我正在编写一个光线追踪器,该过程的一部分是发射可能会也可能不会击中物体(几何物体)的光线。如果没有发生交集(交集是虚数),描述对象的许多方程自然返回 NaN,但如果没有发生交集,并非所有对象都返回 NaN。
我知道如果没有发生交集,我可以强制返回 sqrt(-1),但我想知道是否有办法以更便宜的方式返回它。
这应该有效:
#include <limits>
return std::numeric_limits<double>::quiet_NaN();
return std::numeric_limits<double>::quiet_NaN();
我知道
这是一个老问题,但是使用 C++11,您拥有nan(const char*)
函数族(双打nan
,长双打nanl
和浮点数nanf
)。该参数是特定于实现的,但传递一个空字符串(例如 nan("")
) 返回一个通用的 NaN 值。
math.h
中的NAN
宏也有效。
相关文章:
- 为什么这段代码返回 -nan(ind)?C++
- 为什么 std::isnan() 对于具有 NAN 值的双变量返回 false
- 有意返回 NaN
- 牛顿方法返回 NaN
- Double Exp(double)出乎意料地返回NAN(无浮子溢出)
- NAN通过指针访问时是否返回false
- AVX内在_mm256_cmp_ps是否应在为true时返回NaN
- OpenCV 3.1 ANN 预测返回 nan
- nan在C++中是什么意思?为什么pow(-4,-2.1)返回-nan
- 当 M 很大时返回 nan(ind)
- 特征库的矩阵逆函数返回NaN
- c++中返回NaN的函数
- 函数一直返回NaN
- 神经网络在OpenCV 3.0中只返回nan
- 为什么我的函数开始返回nan
- 返回NaN或抛出异常
- NaN或false作为双精度返回值
- 如果任一参数为 NaN,什么会导致 C/C++ <、<= 和 == 运算符返回 true?
- FFTW3 DFT 2D总是返回NaN
- 正态估计返回NAN的曲率场