Tengo una clase plantilla que como atributos tiene una matriz (T **m) y 2 enteros
(int m, int n). (Defino así la matriz porque si no el compilador me da fallo, creo que por el parámetro, tampoco me deja haciendo T *x[])
He leído que para clases que tienen atributos que son mas complejos que vectores (matrices, grafos etc) hay que definir el destructor porque éste por si solo no sabe que hacer ante dichas estructuras.
El caso es que lo estoy intentando implementar pero haga lo que haga siempre me da error, esto lo que he hecho, y no entiendo por qué no funciona:
Código:
private:
T **x;
int m,n;
//.......
//.......
public:
A::~A()
//.......
//.......
template <class T>
A::~A(){
for(int i=0;i<this->m;i++){
delete[](this->x[i]);
}
delete[]this->x;
delete& this->m;
delete& this->n;
}
¿Como habría que hacerlo?
Muchas gracias.