【问题标题】:does this C++ function produce a memory leak [duplicate]这个 C++ 函数是否会产生内存泄漏 [重复]
【发布时间】:2022-11-04 22:25:33
【问题描述】:

如果在一个函数中,我有以下代码:

someClass *x = new object(); x = nullptr;

这是内存泄漏吗?或者,内存是否由于其本地范围而重新分配?

谢谢!

不知道如何自己测试。

【问题讨论】:

  • 是的,这在任何good c++ book 中都有解释。另见Must new always be followed by delete?
  • 无论newed 是什么,都必须是deleted。
  • 请注意,这不仅仅是内存泄漏。更糟糕的事情通常会发生,因为你没有正确地破坏构造的对象。
  • 这就是我的想法,但如果它发生在函数中并且想要明确,我会重新考虑。谢谢!
  • 几乎 C++ 中的一切都发生在“函数中”

标签: c++ memory-leaks


【解决方案1】:

这是内存泄漏。这是一个可以得到的最清晰的例子。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-06-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多