【发布时间】:2009-04-22 01:20:38
【问题描述】:
我在我的代码中声明了一个结构,然后尝试将它插入到我编写的数据结构中。但是,我担心由于我在函数内部声明了结构,一旦函数结束,数据结构将指向垃圾。有人可以帮忙吗?
代码如下:
void Class::function()
{
// do some stuff
node newNode;
newNode.memAddr = tempNode.memAddr+totalSize;
newNode.size = tempNode.size-totalSize;
lists[newNode.size>=512?64:(newNode.size>>3)].insert(&newNode);
}
编辑:我实际上是在尝试重写 malloc,所以调用 malloc() 或 new 在这里不起作用。有没有什么办法可以把这段代码移到插入方法中,然后让它以一种不会超出插入范围的方式工作?
【问题讨论】: