salut voila je creeer une liste chainée avec un procedure de suppression:

lobjet est supprimé par rapport a son rang
donc quand lutilisateur tappe le rang normalemnt cela devrai supprimer lobjet au rang saisi

sauf que rien ne se supprime et je nest pas d'erreur je ne comprned pas pourquoi mon objet ne se supprime pas

dans la procedure de suppression de debut par de probleme mais c dans la suppression du milieu ou en fin

pourtant sa me parait bon d'un point de vu algo

donc voici le code de ma procedure milieu:
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
 
void liste_chocolat::suppression_milieu(int indice)
{
	chocolat *ptcourant;
	chocolat *ptprecedent;
	int i;
 
	ptcourant=premier;
 
	while ((i<indice)&&(ptcourant !=NULL))
	{
		ptprecedent=ptcourant;
		ptcourant=ptcourant->getsuivant();
		i=i++;
	}
	if (ptcourant!=NULL)
	{
		ptprecedent->setsuivant(ptcourant);
		delete ptcourant;
	}
}
voici la declaration de ma classe
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
 
class liste_chocolat
{
private:
	chocolat *premier;
	void insertion_debut(chocolat *ptinsert);
	void insertion_milieu(chocolat *ptinsert);
	void suppression_debut();
	void suppression_milieu(int indice);
public:
	liste_chocolat();
	void insertion(chocolat *ptinsert);
	void parcours();
	void suppression(int rang);
};
ps premier est un pointeur qui est instancier dans mon constructeur et qui correspond au premier objet de ma liste

voila merci par avance