I currently have a function:
template
bool func(T &t, int x)
{
// do stuff...
}
However I would like to have thr
Turn out the comment about overload into answer:
// For enum
template
typename std::enable_if::value, bool>::type
func(T& t, int x);
// for unsigned char
bool func(unsigned char& t, int x);
// for other
template
typename std::enable_if::value, bool>::type
func(T& t, int x);
Live example
An alternative is to use specialization for unsigned char:
// for other
template
typename std::enable_if::value, bool>::type
func(T& t, int x);
// specialization for unsigned char
template <>
bool func(unsigned char& t, int x);
Live example