C++11以上编译器使用std::isinf(),修改使用头文件<cmath>
#ifdef _MSC_VER
! _finite(n)
#elif __cplusplus>=201103L || !(defined(isnan) && defined(isinf))
std::isnan(n) || std::isinf(n)
#else
isnan(n) || isinf(n)
#endif
C++11以上编译器使用std::isinf(),修改使用头文件<cmath>
#ifdef _MSC_VER
! _finite(n)
#elif __cplusplus>=201103L || !(defined(isnan) && defined(isinf))
std::isnan(n) || std::isinf(n)
#else
isnan(n) || isinf(n)
#endif