【发布时间】:2012-10-30 22:38:03
【问题描述】:
为了演示,我创建了这个简单的控制台应用程序:
#include <iostream>
class Person {
public:
int mAge;
};
int main(int argc, const char * argv[])
{
Person *iPerson = new Person();
iPerson->mAge = 15;
std::cout << "Age: " << iPerson->mAge;
return 0;
}
现在我知道 Valgrind 和 CPP Check 将在此处识别泄漏,但测试 Apple 的仪器时,当我分析此代码时,我看不到任何泄漏。尽管 iPerson 从未被删除。
【问题讨论】:
-
在我的机器上,valgrind 正确检测到“肯定丢失:1 个块中的 4 个字节”...
-
您使用什么程序?甚至不需要工具来查看泄漏...
-
@MFH - 这实际上是一个简单的案例来证明我没有得到任何未删除的对象的任何东西。实际问题涉及一个相当大的框架和一个测试应用程序。因为我没有得到测试应用程序没有删除的对象的内存泄漏,所以我也没有得到这些应用程序对象中组成的对象的内存泄漏,等等。当问题可以用十几行来证明时,我真的不明白提交数百行代码行的意义。
标签: c++ xcode memory-leaks instruments xcode4.5