在使用一些可以给出NaN结果的浮点数时,我发现float.NaN
与float.IsNaN()
的工作原理不同。
例如
void Foo(float a)
{
// a is NaN at pass in
Debug.Log(a == float.NaN); // false
Debug.Log(float.IsNaN(a)); // true
}
为什么它们的反应不同?我知道float.IsNaN()
的表现不是很好。是否有更好的方法来测试float.NaN
浮点数?