sous linux il y a un utilitaire du nom de valgrind qui cherche les fuites de mémoire. Sous windows, je n´en connais pas de gratuit. En outre il y en a des propriétaire comme purify.
Une solution "cheap" pour faire ce que tu dis, est de compter le nombre d´appel aux constructeurs de tes classes et de compter le nombre d´appel a des destructeurs, tu devrais ainsi voir quel sont les objets que tu désalloue mal.
En passant, je rappele que pour détruire un objet alloué dynamiquement il faut faire
delete ptr;
mais que pour détruire un tableau il faut faire
delete[] ptr;