如何阻止此内存泄漏?

doo*_*fcn 0 c++ memory-leaks

我已将程序内存泄漏缩小到这些动态创建的内容之一.泄漏非常小,没有问题,但最好修复,这里是代码:

//allocate row memory:
dynamicNodeArray = new int *[r];
//allocate column memory:
for(int i = 0; i < r; i++)
{
    dynamicNodeArray[i] = new int[c];
}

//...

//allocate memory for nodes (array of structs):
node* nodes = new node[r*c];

//...

//clean up:
for(int i = 0; i < r; i++)
{
    delete dynamicNodeArray[i];
}

delete dynamicNodeArray;
free(nodes);
delete nodes;
Run Code Online (Sandbox Code Playgroud)

πάν*_*ῥεῖ 5

delete dynamicNodeArray;应该delete [] dynamicNodeArray;像你分配它一样new[].

也永远不会打电话free()给你分配的东西new()new[].