#include #include using namespace std; // general version template class Compare { public: static bool IsEqual(const T& lh, const T& rh) { return lh == rh; } }; // specialize for float template<> class Compare { public: static bool IsEqual(const float& lh, const float& rh) { return abs(lh - rh) < 10e-3; } }; // specialize for double template<> class Compare { public: static bool IsEqual(const double& lh, const double& rh) { return abs(lh - rh) < 10e-6; } }; void main() { getchar(); }