1
当我的应用程序完成时,Visual Studio中的调试构建会打印出所有未分配的对象以及未释放的分配的序列号。然后通常我只需要对_CrtSetBreakAlloc(x)进行调用,其中'x'是alloc seq数字,并在分配时获得方便的ASSERT。然而,当COM对象发生泄漏时,这显然不起作用。有没有简单的方法来使用分配序号让执行停止在那里? 我试着在dbgheap.c中设置一个条件断点,它不会触发任何一个,我不明白 - COM对象是作为调试构建的。_CrtSetBreakAlloc跟踪COM对象中的内存泄漏
我可以;并且我将相同的调用插入到COM DLL中的一些构造函数中,并没有帮助。我认为构造函数是在那里发生的第一个分配。我同意你的意见,但它并没有向我解释为什么手动断点没有触发。 – 2011-01-29 01:01:07