CList, c'est quoi ce bug ?? [MFC][RESOLU] - C++ - Programmation
MarshPosté le 07-07-2003 à 10:59:33
Remplissage de ma CList :
Code :
AwbData we;
char truc [3];
for (int i=0;i<10;i++)
{
_itoa(i,truc,10);
we.awb = truc;
AwbList.AddTail(we);
lecture de la liste
Code :
POSITION pos = AwbList.GetHeadPosition();
AwbData ae;
for (int it=0;it < AwbList.GetCount();it++)
{
ae = AwbList.GetNext(pos);
AfxMessageBox(CString(ae.awb));
}
Ca m'affiche les valeurs correctes, cad 0 1 2 3 4 5 6 7 8 9
Mais la ou est mon probleme c'est que si je rempli ma liste avec des autres "genre" de valeur, TOUTE la liste est modifiee a chaque fois que j'insere un nouvel element avec la valeur de cet element . Voici le remplissage :
Code :
AwbData we;
for (int i=0;i<10;i++)
{
//trt pour obtenir valeur
we.awb = valeur; //valeur est de la forme "012-34567890"
AwbList.AddTail(we);
J'ai mis les valeurs 012-34567890 112-34567890 212-34567890 312-34567890 412-34567890 512-34567890 612-34567890 712-34567890 812-34567890 912-34567890 dans la liste. et lors de l'affichage j'obtiens 10 fois 912-34567890.
Est ce que quelqu'un sait pourquoi ca marche la premiere fois et pas la deuxieme?
EDIT : bon ben les ptits gars ne pas oublier que si on utilise une liste de structure et qu'on y met un CString (valeur dans mon exemple que je mettais dans AwbData.awb) ne fonctionne pas!!! Mais en y mettant un char[] ca fonctionne
Message édité par polo021 le 07-07-2003 à 11:13:56
Marsh Posté le 07-07-2003 à 10:59:33
Remplissage de ma CList :
lecture de la liste
Ca m'affiche les valeurs correctes, cad 0 1 2 3 4 5 6 7 8 9
Mais la ou est mon probleme c'est que si je rempli ma liste avec des autres "genre" de valeur, TOUTE la liste est modifiee a chaque fois que j'insere un nouvel element avec la valeur de cet element .
Voici le remplissage :
J'ai mis les valeurs 012-34567890 112-34567890 212-34567890 312-34567890 412-34567890 512-34567890 612-34567890 712-34567890 812-34567890 912-34567890 dans la liste.
et lors de l'affichage j'obtiens 10 fois 912-34567890.
Est ce que quelqu'un sait pourquoi ca marche la premiere fois et pas la deuxieme?
EDIT : bon ben les ptits gars ne pas oublier que si on utilise une liste de structure et qu'on y met un CString (valeur dans mon exemple que je mettais dans AwbData.awb) ne fonctionne pas!!!
Mais en y mettant un char[] ca fonctionne
Message édité par polo021 le 07-07-2003 à 11:13:56