pozzato58
Messages postés2Date d'inscriptionjeudi 19 avril 2007StatutMembreDernière intervention28 mars 2008
-
27 mars 2008 à 16:44
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 2010
-
28 mars 2008 à 18:31
Bonjour,
J'ai un petit souci de fuite de mémoire.
Le debbuger m'indique :
Detected memory leaks!
Dumping objects ->
{103} client block at 0x003E7EE0, subtype c0, 216 bytes long.
a CDialog object at $003E7EE0, 216 bytes long
Object dump complete.
J'ai trouvé de qu'elle fenêtre vient le problème mais je n'ai pas réussi à le résoudre
En faite j'ai une fenetre principale où j'ai un bouton pour ouvrir une fenêtre fille avec l'instruction suivante :
J'ai recherché un moment la mémoire que je ne libère pas et en faite l'adresse de la fuite est lié au this ci-dessus car l'adresse est :
this : 0x003E7CA0 alors que la fuite est indiqué en 0x003E7EE0
J'ai donc inclus un delete this lorsque je détruit mas fenetre mais le résultat est identique
luhtor
Messages postés2023Date d'inscriptionmardi 24 septembre 2002StatutMembreDernière intervention28 juillet 20086 28 mars 2008 à 11:27
C'est quoi le gestionnaire mémoire qui te fournit les fuites mémoires ?
Tu peux peut etre remodifier l'opérateur new/delete pour demander d'afficher la ligne de l'allocation.
vecchio56
Messages postés6535Date d'inscriptionlundi 16 décembre 2002StatutMembreDernière intervention22 août 201014 28 mars 2008 à 18:31
C'est pas compliqué, tu regardes sizeof(TaClasse) et tu regardes si c'est dedans. Mais dans tous les cas c'est pas l'objet lui-même qui n'est pas bien libéré, mais un des attributs de ta classe (sinon ca serait la même adresse pour this et pour la zone non libérée)