Während meiner Arbeit habe ich regelmäßig ziemlich häufige Programmierfehler - mit einem Objekt, das bereits freigegeben wurde. Dies ruft UB in C++ auf. Auf Linux, diese Art von Problemen werden in der Regel mithilfe Valgrind Tool Memcheck gelöst. Von Memcheck manual:Gibt es Valgrind Memcheck wie Werkzeug für Windows zum Debuggen nach freien Fehlern verwenden?
Memcheck versucht festzustellen, was die illegale Adresse, beziehen könnte, da diese oft nützlich ist. Also, wenn es in einen Speicherblock zeigt, der bereits freigegeben wurde, werden Sie darüber informiert, und auch , wo der Block freigegeben wurde.
Memcheck bietet mir Call-Stack, wo das Objekt freigegeben wurde und ich kann weitermachen und das Problem debuggen. Gibt es ein ähnliches Werkzeug für Windows mit der gleichen Funktionalität, vorzugsweise kostenlos?
Ich hatte viel Glück mit Purify in der Vergangenheit, aber es ist definitiv nicht kostenlos. –
http://stackoverflow.com/questions/413477/is-there-a-good-valgrind-substitute-for-windows – stanwise
Wenn Sie an einer Antwort für nur C interessiert sind, habe ich eine. –