Существует множество инструментов, которые могут помочь вам отследить утечки памяти.Все они имеют свои преимущества и недостатки.
Самым большим недостатком большинства инструментов является то, что они не показывают утечки автоматически.Вы явно должны записать состояние вашей памяти в файл во время жизни вашего приложения, затем несколько раз сбросить состояние снова, а затем сравнить два состояния.Это вряд ли удобно для разработчиков.
Visual Leak Detector - один из инструментов, который намного лучше (на мой взгляд).Он автоматически регистрирует все утечки в конце вашего приложения, включая стек вызовов.Обратите внимание, что Microsoft C Run Time также может регистрировать утечки, но делает это без стека вызовов.
Мой личный фаворит - просто управлять своим собственным памятью.Внедрите глобальное новое и удалите себя (обратите внимание: есть несколько вариантов, которые вам нужно реализовать), и внесите в журнал всю неосвобожденную память в конце приложения (здесь может помочь использование глобальной переменной, которая была уничтожена последней).