Bonjour,
J'aurai besoin d'aide sur un problème de classe qui décrit un chemin. Pour construire cette classe, j'ai utilisé une classe Point pour les coordonnées d'un points.
Voici alors comment se présente 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
16
17
18
19
20
21
22
23
 
class Chemin {
      private :
              int n; //nombre de points que l'objet contient
              Point* T; // tableau qui contient la liste ordonnée des points
              static int nbdefaut;
              static bool premier;
 
      public :
 
             Chemin(int=nbdefaut);
             static int nombre();
 
            void afficherC() const;
 
             // constructeur par copie
             Chemin(const Chemin &);
 
            void DefautPoints(int);
 
            Chemin operator+(const Point &) const;
            Chemin operator--() const;  //celui qui me pose problème
             };
Je souhaiterai créer un opérateur qui permet de retirer le dernier point d'un chemin mais qui ne renvoie pas de résultat). Je ne vois pas vraiment comment faire. Voici ma première idée :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
Chemin Chemin::operator--() const {
       Chemin D;
       D=Chemin(n-1);
       int i;
       for(i=0;i<n-1;i++) {
                        D.T[i]=T[i];
                       }
       D.T[n-1]=NULL;
       delete D.T[n-1];
 
        }
Pourquoi cela ne marche pas.
Comment faire ?
Merci d'avance pour votre aide....