Bonjour à tous
je suis entrain d'utiliser un programme que j'ai développé en utilisant l'environnement c++builder. j'utilise des listes doublement chaînées, j'alloue avec malloc et je libère avec free. après un nombre assez important d'alloc/desalloc, un message d'erreur surgit:
"le projet simulateur3.exe a provoqué une classe d'exception EAccessViolation avec le message 'Violation d'accès à l'adresse ... dans le module 'BORNDMM.DLL'. lecture de l'adresse.... processus stoppé.. "
J'ai pas pu savoir d'où provient cette erreur car tout parait normal lorsque j'ai utilisé le pas à pas mais j'ai pu localiser quel est l'objet ( par son identifiant ) qui en le libérant provoque cet arrêt et donc j'ai modifié le programme de sorte qu'il ignore l'instruction de désallocation de cet objet, alors le programme ne se plante pas à la rencontre de cet objet, il avance dans l’exécution mais il se plante de la même façon en rencontrant l'instruction de désallocation d'un autre objet.
il est à remarquer que même en utilisant les instruction new et delete au lieu de malloc et free le même problème se produit avec les mêmes objets et que même si j'ai lancé l’exécution plusieurs fois, le programme se plante avec les mêmes objets.
y a t il quelqu'un qui peut m'aider et merci d'avance
Partager