Я пытаюсь новый компилятор Intel 2018 в отличие от любого другого компилятора, который у меня здесь есть, этот фрагмент кода дает сбой:
template<int power> double msqrT(double a) { return mpow(a, (double)power); };
template<> double msqrT<2>(double a) { return a*a; };
template<> double msqrT<3>(double a) { return a*a*a; };
template<> double msqrT<4>(double a) { return a*a*a*a; };
double x = msqrT<2>(y);
Для каждой специализации шаблона он заканчивается:
error : no instance of function template "msqrT" matches the specified type
Есть идеи почему?
Задача ещё не решена.
Других решений пока нет …