probleme de vidange de CList
Bonjour,
j'essai d'utiliser les CList pour stoquer des elements contenant des données variée de type :
Code:
1 2 3 4 5 6 7 8 9 10 11
| class CBillet
{
public:
CBillet(void);
~CBillet(void);
CString id, nom, prenom, tel;
int nbP;
POSITION posT;
void setLine(CString line);
CString getLine(void);
}; |
je déclare une clist avec :
Code:
CList <CBillet*, CBillet*> p_listeBillets;
pour ajouter des elements dedans, je met :
Code:
1 2 3
| CBillet *billet;
billet = new CBillet;
p_listeBillets.AddTail(billet); |
et pour vider, j'ai :
Code:
1 2 3 4 5 6 7 8 9 10
| CBillet *billet;
POSITION pos;
pos = p_listeBillets.GetHeadPosition();
billet = p_listeBillets.GetHead();
while (pos != NULL)
{
delete billet;
billet = p_listeBillets.GetNext(pos);
}
p_listeBillets.RemoveAll(); |
le premier passe, mais pas le suivant, j'ai une erreur de mauvais pointeur.
vous voyez ou se situe mon erreur ?
merci de votre aide