¿El siguiente código C++ es correcto? Y si es así, ¿podría alguien señalarme un párrafo en el estándar que menciona esto? Parece que uno puede usar template-name en lugar de template-id en un alcance adjunto con la plantilla y el compilador agrega automáticamente la lista de argumentos de la plantilla.Usando template-name en lugar de template-id dentro de la definición de plantilla de clase
template<class Type>
class Mana {
public:
Mana(const Mana& m) {/*...*/}
Mana() {/*...*/}
};
en contraposición a:
template<class Type>
class Mana {
public:
Mana(const Mana<Type>& m) {/*...*/}
Mana() {/*...*/}
};
El código se compila con g ++, así como en el estudio visual MS.
El código es correcto. 'Mana' es equivalente a' Mana '. Para una cita del estándar, tenemos que esperar. –
iammilind