essaie de rajouter :
if(*j != NULL) delete *j;
Cependant je le répète, est-ce que tu as VRAIMENT besoin de poiteurs...
Je pense qu'il est beaucoup plus simple de rendre une classe copiable et d'utiliser des instances que d'utiliser des pointeurs 
ta classe MG_NOEUD a déjà un constructeur par copie, fait lui un opérateur d'assignation (operator=) et un destructeur et utilise un vector<MG_NOEUD>
tu n'auras plus besoin de faire de new ni de delete 
au besoin, je peux même t'aider à faire l'opérateur d'assignation et le destructeur, il n'y a besoin pour cela que de la signature de la classe (en fait juste les données membres), et les constructeurs qui existent déjà (y compris celui par recopie)
à partir de ça, on pourra faire ces deux petites fonctions supplémentaires et tu n'auras plus besoin de pointeurs...
en C++, les pointeurs sont très rarements à utiliser...
C'est uniquement dans les cas où on ne peut pas utiliser les références, si on a besoin d'avoir un type NULLable, si on a une classe qui ne peut être copiée de part sa sémantique (un flux par exemple), et sûrement quelques autres rares exceptions que j'oublie 
mais je ne pense pas que ce soit le cas ici ^^
Partager