如果我将一个POD结构分配给另一个POD组织,是否存在内存泄漏

If I assign a POD struct to another POD struct, is there any memory leak?

本文关键字:POD 组织 另一个 是否 泄漏 内存 存在 分配 结构 一个 如果      更新时间:2023-10-16

例如:

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);

这是非常安全的。

内存泄漏是由(错误)使用指针和内存分配引起的(通常是对new的调用之后没有对delete的调用,但更复杂的情况往往是真正出现问题的地方——例如,在处理调用new的类时,没有完成"三(或五)规则")。

当然,当使用对malloc和同级的C风格调用时,代码应该有一个相应的free调用。