如果你使用new来分配空间,什么时候必须释放它?

时间:2013-08-07 23:11:07

标签: c++ unix data-structures binary-tree nodes

我们在类中创建了二叉树结构,它使用new来创建tnodes。我必须为它编写freetree函数。

我只是有一般性问题。如果你使用new来分配空间,你何时必须释放它?

1 个答案:

答案 0 :(得分:0)

当您不再需要分配的空间时。

struct Data { ... }

...

Data* data{new Data};
data->something();
doSomethingWithDataPtr(data);

delete data;

显然这个例子非常简单,但决定何时delete分配空间是完全主观的...只是确保你最终删除它。 (考虑使用智能指针而不是newdelete来避免错误。)