template using is_arith_t = typename std::enable_ifstd::is_arithmetic<T::value>::type;
http://bbs.csdn.net/topics/392052716