Деструктор для освобождения динамической памяти, выделенной для матрицы
~ UTM () {…}
правильно освобождает любую динамически выделенную память для объекта разреженной матрицы.
Создание матрицы уже выполнено, я застрял на том, как удалить память, выделенную для новой матрицы в отдельном классе, через деструктор другого класса.
struct node
{
int data;
node *next;
};
class UTM
{
public:
int row, col;
string name;
node *head, *tail;
UTM(string name)
{
this->name = name;
head = NULL;
tail = NULL;
}
UTM(int row, int col, string name)
{
this->row = row;
this->col = col;
this->name = name;
head = NULL;
tail = NULL;
}
~UTM()
{
delete sumMatrix;
}
UTM *UTM::sumUTM(UTM &other)
{
UTM *sumMatrix = new UTM(row, col, "Addition Matrix Result");
node *temp1 = other.head;
node *temp2 = this->head;
while(temp2 != NULL)
{
int sum = temp1->data + temp2->data;
sumMatrix->inputNode(sum);
temp1 = temp1->next;
temp2 = temp2->next;
}
return sumMatrix;
}
Как мне освободить выделенную память через деструктор, я застрял только на этой части ..