为什么这是内存泄漏?

Nar*_*rek -4 c++ memory-leaks

以下文章解释了内存泄漏.我想知道为什么以下代码导致内存泄漏.

  int *data = new int;
  *data = 15;
Run Code Online (Sandbox Code Playgroud)

当我创建data并分配15时,就像我理解的那样15被复制到内存data所以我们仍然有一个指向的指针,data我们可以delete.

我认为内存泄漏就是data = 0x00123例如,对吗?在这里,我们已经失去了对内存的控制,内存真的浪费了.

有什么想法吗?

Dav*_*aim 7

你有选择地阅读.

引用您链接的原始网站:

超出范围指针

void memLeak( )
{
  int *data = new int;
  *data = 15;
}
Run Code Online (Sandbox Code Playgroud)

在这个例子中,存在内存泄漏,因为没有人被删除data,之后变得无法访问memLeak

这个片段:

int *data = new int;
*data = 15;
Run Code Online (Sandbox Code Playgroud)

本身并不是内存泄漏