In the description of some std template function I saw something like:
if the template parameter is of integral type, the behavior is such and such.
If you are unable to use C++11 features, std::numeric_limits::is_integer does the same thing as std::is_integral::value, and is available with C++98.
std::is_integral::value
Note that the 98 version is integer, not integral.