[BUG] [VC++] Mais pkoi est-il si méchant ???

Mais pkoi est-il si méchant ??? [BUG] [VC++] - Programmation

Marsh Posté le 03-03-2001 à 17:53:41    

Voila, j'ai un prog sous VC++ qui fonctionnait au poil hier, et aujourd'hui j'ai fait qques changements mineures, du genre changer le nom d'une variable, ou enlever des commentaires, et maintenant il plante !!! Et la partie qui plante, je peux vous assurer que je n'y ai absolument pas touché depuis longtps ...
Ce n'est pas la 1ere fois que VC++ me fait le coup, les dernière fois je sais plus trop comment j'avais fait, mais c'était des trucs débiles du genre changer une fonction de place (ie dans le fichier .cpp), enlever le rep debug, changer le nom de la variable qui merdait ... Enfin que des trucs totalement irrationnels ...
Et donc là j'ai encore un problème, mais ça fais 4h que je suis dessus et rien ne fonctionne ... Par contre, j'ai trouvé ce qui fait planter, et c'est risible, alos soit c'est le compilo qui plante, soit je suis devenu nul après 4h de debuggage ...
Voila ce qui se passe : je déclare une variable dans WinMain, ça apelle donc le constructeur. Et dans le constructeur, tout se passe bien. Mais attention, quand il rends la main, je reviens dans WinMain, et la variable n'est plus initialisée !! ie toutes ses vaiables internes ont des valeurs aléatoires ...
Alors SVP, j'accepte toute réponse, mais aidez-moi !!!!!

Reply

Marsh Posté le 03-03-2001 à 17:53:41   

Reply

Marsh Posté le 03-03-2001 à 19:38:01    

freewol a écrit a écrit :

Voila, j'ai un prog sous VC++ qui fonctionnait au poil hier, et aujourd'hui j'ai fait qques changements mineures, du genre changer le nom d'une variable, ou enlever des commentaires, et maintenant il plante !!! Et la partie qui plante, je peux vous assurer que je n'y ai absolument pas touché depuis longtps ...
Ce n'est pas la 1ere fois que VC++ me fait le coup, les dernière fois je sais plus trop comment j'avais fait, mais c'était des trucs débiles du genre changer une fonction de place (ie dans le fichier .cpp), enlever le rep debug, changer le nom de la variable qui merdait ... Enfin que des trucs totalement irrationnels ...
Et donc là j'ai encore un problème, mais ça fais 4h que je suis dessus et rien ne fonctionne ... Par contre, j'ai trouvé ce qui fait planter, et c'est risible, alos soit c'est le compilo qui plante, soit je suis devenu nul après 4h de debuggage ...
Voila ce qui se passe : je déclare une variable dans WinMain, ça apelle donc le constructeur. Et dans le constructeur, tout se passe bien. Mais attention, quand il rends la main, je reviens dans WinMain, et la variable n'est plus initialisée !! ie toutes ses vaiables internes ont des valeurs aléatoires ...
Alors SVP, j'accepte toute réponse, mais aidez-moi !!!!!




 
Ouais, je connais çà ...
Une fois il ne voulait plus compiler  juste parce que j'avais déplacé l'intégralité du projet, une autre fois au retour d'un week-end, pareil il ne voulait plus compiler.
Une solution consiste souvent à faire 'Build -> Clean' et puis 'Rebuild All', sinon, dans ton cas particulier, regarde bien si en enlevant tes commentaires tu n'as pas supprimé un ';' ou une '}' ou encore une '(' et puis comme tu as renommé des variables regarde si une de tes variables ne porte pas le même non qu'une variable définie dans un header...
 
Salut

Reply

Marsh Posté le 03-03-2001 à 19:44:21    

OK, merci bcp zop, je cherchais justement comment faire ce "clean" ...
D'ailleur, j'ai trouvé le bug, car ça venait bien de VC++, et vous allez voir, c'est trop "drole" ...
En fait, j'avais changé un nom de variable dans une classe, et ce qui se passait, c'est que VC++ avait 2 modèles pour cette classe, chacun avec un nom différent pour cette variable !!! Et donc évidemment, il initialisait le bon modèle, et en revenant du constructeur, il utilise le mauvais, et donc les noms correspondent plus d'où valeurs aléatoires ...
Je l'ai résolu en supprimant mon projet et en en recréant un autre avec les mêmes fichiers ... Donc je pense qu'un "clean" aurait été aussi efficace ...

Reply

Marsh Posté le 03-03-2001 à 21:39:38    

Sinon, je crois qu'en debug VC++ initialise les pointeurs à null et pas en release.


---------------
http://www.cheata.net le site qui vous donne la banane!
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed