J'ai essayé de manipuler une liste en y ajoutant un élément à l'aide d'une méthode .
La définition de la liste est :
Et le code de la méthode d'ajout est:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 struct Chemin{ Case* laCase; Chemin* suivant; };
Mon problème est que la variable chemin ne prend plus les nouveaux éléments!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33 void Itineraire::add(Case& B) { Chemin *nouveau_item=new Chemin; nouveau_item->laCase=new Case(0,0); nouveau_item->suivant=NULL; nouveau_item->laCase->set_Ligne(B.get_Ligne()); nouveau_item->laCase->set_Colonne(B.get_Col()); nouveau_item->suivant=NULL; if ( chemin==NULL ) chemin=nouveau_item; else { Chemin* auxiliaire=new Chemin; /*auxiliaire->laCase=chemin->laCase; auxiliaire->suivant=chemin->suivant;*/ for(auxiliaire=chemin; auxiliaire->suivant!=NULL;){//atteindre la fin de la liste auxiliaire=auxiliaire->suivant;} auxiliaire->suivant=nouveau_item; } }
Partager