例如:
struct Vertex
{
int x;
int y;
};
Vertex makeVertex(int xpos, int ypos)
{
Vertex tmp = {xpos, ypos};
return tmp;
}如果我这么做,我会有记忆泄露吗?:
Vertex a = makeVertex(30,40);
a = makeVertex(5, 102);发布于 2013-08-05 11:07:53
这绝对安全。
内存泄漏是由(Mis)使用指针和内存分配引起的(通常是对new的调用而不是对delete的调用,但更复杂的情况往往是真正的问题发生--例如在处理调用new的类时没有完成“三(或五)条规则”)。
当然,当对malloc和兄弟姐妹使用C风格的调用时,代码应该有一个相应的free调用。
https://stackoverflow.com/questions/18056586
复制相似问题