0

我有一个在 C++ 中实现稀疏矩阵的组件,但是当我检查它的实现时,一些内存分配没有正确释放。我可以访问源代码,但它有点复杂,我不想更改它。令我感到奇怪的是,一些简单的函数如 printf 和 fopen 有内存泄漏,如 deleaker 所示!

我有个问题:

  1. 有什么办法可以释放组件外部分配的所有内存空间?

谢谢

4

1 回答 1

0
  1. 这取决于代码。为了释放一块内存,您需要分配它的函数返回的指针。您可能无法从外部访问此指针。例如,考虑你的类有这样的功能:

    void func() {
        int * ptr = new int[1024];
    }
    

    一旦此函数返回,就不可能释放该内存,因为返回的指针new丢失了。

  2. 那里不能帮你。

于 2012-08-21T06:42:40.140 回答