gtest的浮点数比较断言
关于浮点数的比较,我们知道不能直接用==比较,除此之外,有比较绝对误差和相对误差以及转换为整数比较,
关于浮点数的比较,我们知道不能直接用==比较,除此之外,有比较绝对误差和相对误差以及转换为整数比较,
http://www.cygnus-software.com/papers/comparingfloats/comparingfloats.htm对浮点数的比较写得很详细。
gtest使用的是将sign-and-magnitude representation 转为biased repesentation,然后再进行比较,而不是使用二进制补码的方式进行比较,这样可以不用管浮点数里的指数段表示法。
关于这几种表示方法,可以在http://en.wikipedia.org/wiki/Signed_number_representations找到更多信息。