18 avr
2009
2009
Jamais vu ca ...
Je viens de me prendre la tête pendant pas mal de temps pour trouver un bug incompréhensible ...Je faisais mon ptit dev, mes ptites classes C++, tout bien comme il faut, avec une classe de ce genre ...
class MaClasse
{
int val1;
int truc;
};
Mon projet marche nickel.
Je veux l'améliorer un peu ... et je change ma classe pour quelle ressemble à ça :
class MaClasse
{
int val1;
int val2;
int truc;
};
et là, plus rien ne marche.
Globalement, ça ne marche plus lorsque je fais un delete de ma classe.
MaClasse * maclasse = new MaClasse();
delete maclasse;
Après ce delete, cela ne marche plus comme il faut, alors qu'avant de rajouter le membre supplémentaire à la classe, cela fonctionnait bien.
Alors, je le renleve ... et ca marche ... je le remets, et ca ne marche plus ...
je le renleve ... et ca marche ... je le remets, et ca ne marche plus ...
Et là, coup de génie, je le déplace, de manière à ce que ma classe soit :
class MaClasse
{
int val1;
int truc;
int val2;
};
et là, ca marche ...
Faudra m'expliquer pourquoi !!
(je sais que le terme "ca marche" et "ca marche pas", bien connu des developpeurs, est un peu vague ici ...)
N'empeche ... c'est à se demander si on peut faire confiance à tout ca !
Commentaires
pour moi, ça sent à plein nez la recompilation incomplète... toujours essayer un "make clean all" _avant_ de bricoler, dans des cas louches.



sylvainulg
ajouter un commentaire
2 commentaire(s)
18/04/2009 Ã 20:03:46


Peu être je dis des conneries mais tu devrais chercher le problème ailleurs...
Bon courage :)