动态内存分配C ++通过一种方法

时间:2014-03-16 07:45:19

标签: c++ c++11

我有一个模板类Stack,它需要在堆上分配内存。 问题是我不会在每次推送时分配内存,而是在每个pop上释放它,但我知道在插入(推送)元素之前我的堆栈应该具有​​的大小。 所以我的主要看起来像:

Stack<T> *d = new Stack<T>[n];
for (int i = 0; i < r; ++i)
    d[i].setMem(m);

和setMem(m):

void setMem(int m) {
    this->stackArray = new Stack<T>[m];
}

我很确定我的析构函数~Stack不会释放setMem方法中分配的内存。 任何有关如何释放记忆的帮助都将非常感激。

0 个答案:

没有答案