I am looking to define a template class whose template parameter will always be an integer type. The class will contain two members, one of type T, and the other as
T
The answer is in
For determining the signed-ness of a type use std::is_signed and std::is_unsigned.
std::is_signed
std::is_unsigned
For adding/removing signed-ness, there is std::make_signed and std::make_unsigned.
std::make_signed
std::make_unsigned