У меня есть шаблон класса alpha_x, как,
template <typename T,typename U>
struct alpha_x {
const T & alpha;
const Scalar<U> & x;
alpha_x(const T & a_, const Scalar<U> & x_) : alpha(a_), x(x_) {};
};
У меня есть другой класс с перегрузкой для оператора =
template <typename T>
class Scalar{
...
template <typename U,typename V>
const Scalar<T> & operator = (alpha_x<U,V> c);
...
}
Когда мы пытаемся определить эту функцию,
template <typename T,typename U,typename V>
const Scalar<T> & Scalar<T>::operator = (alpha_x<U,V> c){
//do something...
}
Теперь выдается ошибка «Слишком много параметров шаблона в объявлении шаблона». Как мне с этим разобраться?