结构体的释放问题~~~不是很清楚~~:)
我的一个程序里有如下结构体:
class TreeNode
{
int data;
char * word;
TreeNode * lchild;
TreeNode * rchild;
};
之后有操作:
TreeNode * Node = new TreeNode;
Node->word = new char[10];
现在释放:
delete Node; //出错!!
改成如下形式:
delete [] Node->word; //这句正常
delete Node; //这句还是出错
后来只好改成这样了:
delete [] Node->word;
Node->word = NULL;
delete Node; //顺利通过
----------------------------------------
我想问问大家有没更好的方法释放呢?还是一定要这样做~~~~Node->word = NULL;这句觉得有点怪哈~~