template<typename T> ClassA
{
...
ClassA& operator=(const ClassA&);
...
};
// case one:
template<typename T>
ClassA<T>& ClassA<T>::operator=(const ClassA &rhs)
{ ... }
// case two:
template<typename T>
ClassA<T>& ClassA<T>::operator=(const ClassA<T> &rhs)
{ ... }
Supongo que el caso es correcto.operador de sobrecarga = dentro de la clase de plantilla
Pregunta> ¿Por qué no tenemos que utilizar ClassA<T>
en la lista de parámetros de función, como en el caso de dos?
1, porque se da a entender. – iammilind
Me han dicho que "hay que especificar los parámetros de plantilla para el nombre de una plantilla de clase, excepto dentro del alcance de la propia clase. Aquí el parámetro de función no está dentro del alcance de classA, así que pensé que debe utilizar el caso dos en vez de uno." – q0987
@iammilind: ¿vota por la implícita? –