相关疑难解决方法(0)

为什么使用'new'导致内存泄漏?

我首先学习了C#,现在我开始使用C++.据我所知,newC++中的operator 与C#中的operator 不相似.

你能解释一下这个示例代码中内存泄漏的原因吗?

class A { ... };
struct B { ... };

A *object1 = new A();
B object2 = *(new B());
Run Code Online (Sandbox Code Playgroud)

c++ pointers memory-leaks c++-faq new-operator

130
推荐指数
9
解决办法
2万
查看次数

C#WPF中的内存泄漏

我可以使用一些建议来跟踪C#中内存泄漏的原因.我理解什么是内存泄漏,我知道它们出现在C#中的原因,但我想知道你过去用什么工具/策略来解决它们?

我正在使用.NET Memory Profiler,我发现我关闭它管理的窗口后,我的一个巨大的主要对象是留在内存中,但我不知道如何处理严重的所有链接.

如果我不够清楚只是发一个问题的答案,我会编辑我的问题作为回应.谢谢!

c# profiling garbage-collection memory-leaks

27
推荐指数
2
解决办法
2万
查看次数

Visual C++本机内存管理最佳实践

我是一个老C#程序员和一个C程序员(没有动态内存分配),但是想学习一些关于Visual C++编程的知识.困扰我的问题与C++中的内存管理有关.在C#中,垃圾收集器负责内存管理,但在C++中,有必要建立一些关于谁负责释放分配的内存的规则.我有一些来自C#的典型场景:

  1. 对象放在某种容器中.谁负责释放记忆.如果几个类共享同一个对象怎么办?

  2. 工厂模式.我喜欢使用类的层次结构,其中父类有一个创建子对象的方法?

  3. 有没有办法向调用方法建议返回的对象是被调用者/调用者的所有权.

我想听听一些关于此的好建议.

c++ memory-management visual-c++

3
推荐指数
1
解决办法
2104
查看次数