Boost C++ 库

...世界上最受推崇和设计精良的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu,《C++ 编码规范

头文件 <boost/test/tools/floating_point_comparison.hpp> - Boost C++ 函数库
PrevUpHomeNext

用于比较浮点数值的算法

namespace boost {
  namespace math {
    namespace fpc {
      template<typename FPT> class close_at_tolerance;
      template<typename T> class is_abstract_class_or_function;

      template<typename FPT> struct percent_tolerance_t;

      template<typename FPT> class small_with_tolerance;

      template<typename T> struct tolerance_based;
      template<typename T, bool enabled> struct tolerance_based_delegate;

      template<typename T> struct tolerance_based_delegate<T, false>;
      template<typename T> struct tolerance_based_delegate<T, true>;

      // Method for comparing floating point numbers. 
      enum strength { FPC_STRONG, FPC_WEAK };
      template<typename FPT> 
        std::ostream & 
        operator<<(std::ostream & out, percent_tolerance_t< FPT > t);
      template<typename FPT> 
        percent_tolerance_t< FPT > percent_tolerance(FPT v);
      template<typename FPT> bool is_small(FPT fpv, FPT tolerance);
    }
  }
}

PrevUpHomeNext