Я пытаюсь определить функцию, используя шаблоны, и я хочу, чтобы typename было либо int, либо anEnum (спецификацией c enum, которую я определил). Я попробовал следующее, но мне не удалось:
template <int | anEnum T> // or <int T, anEnum T> or <int, anEnum T>
bool isFunction(const T &aVariable){}
Я пытаюсь использовать шаблоны вместо определения двух перегруженных функций. Я бы предпочел, чтобы эта функция вызывалась следующим образом, при этом программисту не нужно учитывать тип
isFunction(aVariable) // and not isFunction<int> (aVariable) nor isFunction<anEnum> (aVariable)
По сути, я хочу, чтобы эта функция была шаблонной для типов int и aNum. Я искал это, но не смог найти ответ. Что я могу пропустить? Спасибо,