我想了解一个如何使用Leaks工具的简单示例 见:
#include <iostream>
int main (int argc, char * const argv[]) {
char *buf = new char[100];
sprintf(buf, "Hello, World!\n");
// insert code here...
std::cout << buf;
return 0;
}
上面的代码(简单示例)应该泄漏分配在* buf上的指针,对吗? 与valgrind一起跑步后我会发现这很容易 但我在Leaks计划上找不到如何做到这一点 我试着睡觉(60),但对我来说仍然不友好......
感谢,
乔纳森
答案 0 :(得分:0)
我发现Leaks对于快速退出的命令行应用程序并不是那么好用。我建议像你已经完成的那样添加一个sleep()
,但是在主程序逻辑之前添加一个,最后再添加一个,以便Leaks可能对泄漏状态进行采样。
int main() {
sleep(20); // 20s may be enough
{
// do leaky operations, then local variables will go out of scope
}
sleep(20);
}