c++中Vector = Vector的浮点错误安全

  • 本文关键字:Vector 错误 安全 c++ c++
  • 更新时间 :
  • 英文 :


验证后出现错误。

检查两个TVECTOR是否相等

IN: v第一个向量w第二个矢量

RETURN:如果v==w为True,否则为False

注意:使用所有四个组件应该是浮点错误安全的。

bool Vector_IsEqual(TVECTOR v, TVECTOR w)
{
    for( int i = 0; i < 4; i++ )
    {
        if( ( float ) v.e[ i ] == ( float ) w.e[ i ] ) {
            return true;
        }
        else {
        return false;
        }
    }
}
Inputs:
    < -2,  0, -4,  1 >
    < -2,  1.9999999e-005, -4,  1 >
Your output:
    true
Correct output:
    false

我建议仔细查看循环中的代码。它会到达第二次迭代吗?

相关内容

最新更新