IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++ Discussion :

Utilisation des méthodes d'une classe à l'interieur d'une autre


Sujet :

C++

  1. #1
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut Utilisation des méthodes d'une classe à l'interieur d'une autre
    salut,

    j'ai deux classes A et B,

    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
    class A{
      -------
      -------
     
      public : 
          void A::afficher(){
              ----------
            }
    }
     
    class B{
      A *a;
      -------
     
      public :
          void B::afficher(){
               a->afficher();
           }
    }
    Chacune des deux classes est définie toute seule dans un fichier, et j'inclue "A.h" lors de la définition de la classe B.

    Mais, le compilateur me donne des erreurs en me disant qu'il n'arrive pas à trouver la fonction visée : undefined reference to `Vecteur::afficher()'

    alors que faire pour que ca passe ?

    Merci d'avance
    Bien cordialement

  2. #2
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    Salut,

    La première réflexion est toute bête:

    As tu bien inclus le fichier d'en-tête A.h dans le fichier dans lequel tu fais appel à a->afficher()

    N'oublie pas que la déclaration anticipée d'une classe ne fait que dire au compilateur que telle classe existe, mais que cela ne lui dit pas ce qui compose la classe en question...Pour cela, il faut impérativement inclure le fichier d'en-tête dans lequel la classe est définie (dans lequel on donne le corps de la classe)

    La deuxième remarque est simplement d'ordre synthaxique: n'oublie pas le point virgule ";" après la parenthèse qui ferme la définition de tes classes

    La troisième remarque qui me vient à l'esprit, c'est d'être particulièrement surpris par le code tel que tu l'écris:

    Chez moi, si j'écris un code du genre de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    class A{
      public : 
          void A::afficher(){
            }
    };
    le compilateur se plaint par une erreur "extra qualification A:: on member afficher"

    Je me pose donc la question de savoir où ta méthode est définie.

    Si tu défini une méthode au sein de la définition de la classe, il n'est pas nécessaire (et le compilateur se plaint d'ailleurs si tu le fait) de préciser la portée de la classe (ici A:

    Si tu définis la méthode ailleurs qu'au sein de la classe, la portée devient indispensable, mais, dans ce cas, n'écris pas l'implémentation de la méthode au sein de la classe quand tu présente le code sur le forum
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  3. #3
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    bonjour,

    Concernant les remarques que tu m'as fait, je les ai appliqué depuis le début :
    1. #include "A.h"
    2. le point virgule à la fin de la déclaration de la classe
    3. ...


    je crois que vous ne m'avez pas bien compri

    j'ai un fichier nommé : A.h (dans lequel il y a les protoypes des fonctions et les variables et bien sûr j'ai aussi un autre fichier "A.cpp" dans lequel il y a la définition détaillée)

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    class A{
    private :
       --------
    public :
       void A::afficher();
       -----------
    }
    Quand je compile 0 Erreurs

    j'ai un autre fichier : B.h
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    #include "A.h"
    class B{
    private :
       A *a;
       --------
    public :
       inline void B::afficher(){ cout<<"Objet de classe B : "; a->afficher();}
       -----------
    }
    le problème c'est que lors de l'appel de la méthoe afficher de la classe A dans le corps d'une fonction membre de la classe B il me donne l'erreur : [Linker error] undefined reference to `A::afficher()'

    voila !!!
    Merci d'avance
    Bien cordialement

  4. #4
    Membre expérimenté
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Points : 1 452
    Points
    1 452
    Par défaut
    Salut,

    pourquoi, dans tes prototypes:
    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
    class A{
      -------
      -------
     
      public : 
          void A::afficher(){
              ----------
            }
    }
     
    class B{
      A *a;
      -------
     
      public :
          void B::afficher(){
               a->afficher();
           }
    }
    dire void A::afficher() au lieu de void afficher()?
    même remarque avec B::afficher.

  5. #5
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    Citation Envoyé par coyotte507 Voir le message
    Salut,

    pourquoi, dans tes prototypes:
    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
    class A{
      -------
      -------
     
      public : 
          void A::afficher(){
              ----------
            }
    }
     
    class B{
      A *a;
      -------
     
      public :
          void B::afficher(){
               a->afficher();
           }
    }
    dire void A::afficher() au lieu de void afficher()?
    même remarque avec B::afficher.
    salut,

    aaaaaaaaaah, j'y ai pas fait attention ici,
    Mais dans le code d'origine j'ai pas mis ca
    le truc des classes A et B c'est juste un exemple pour vous expliquez la situation dans laquelle je suis tombé

    Bien cordialement

  6. #6
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    L'idée, quand on donne un code, c'est quand même d'essayer de le donner de manière à ce qu'il soit correct...

    Ainsi, le point virgule après l'accolade fermante d'une définition de classe fait partie de la définition, et il faut donc toujours le mettre...

    Pour l'inclusion, effectivement, j'avais "zappé" une ligne.

    Enfin pour le A::afficher() et le B::afficher(), au sein de la définition de la classe, ça me fait réellement une erreur.

    Le conseil de base, quand on pose une question reste quand même toujours aide nous à t'aider.

    Pour nous aider à t'aider, essaye de fournir le code tel qu'il est chez toi, suffisant pour nous permettre de reproduire ton erreur.

    Enfin, si (et on peut éventuellement le comprendre) tu donnes des noms de classes à titre d'exemple, pense quand même à adapter le texte de l'erreur, car, ici, l'erreur fait référence à une méthode de la classe Vecteur, mais cette classe n'existe pas (ce n'est ni un classe faisant partie d'une bibliothèque couremment utilisée, ni une classe que tu nous dis avoir créée toi-même): on ne peut donc a priori pas savoir d'où vient réellement l'erreur (car, pour nous, il n'existe que la classe A et la classe B ).

    Ceci dit, quand l'éditeur de liens se plaint d'une "undefine reference to UneClasse::uneMethode()", c'est, généralement, parce que tu as déclaré la méthode (ce qui a permis au compilateur de faire son travail quand il a vu que tu l'utilisait), mais que tu ne l'as pas implémentée.

    Du coup, quand l'éditeur de liens prend le relais, il "trouve" la déclaration de la méthode, il trouve un symbole qu'il doit remplacer par l'adresse mémoire à laquelle commence cette méthode (pour l'appeler), mais il ne peut pas faire le lien entre le symbole et l'adresse mémoire.
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  7. #7
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    salut,

    je crois que j'ai fait une gaffe quand je n'ai pas bien écrit mon code, et je m'en excuse.

    Bon je vais vous donner la version originale de mon problème

    J'ai 2 classes Vecteur et Data qui sont liées entre elles, l'image suivante montre une partie de mon diagramme de classe :


    Les codes correspondants sont les suivants :
    1. Le fichier Vecteur.h
      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
      34
      #ifndef Vecteur_h
       
      class Vecteur 
      {
        public:
            Vecteur();
            Vecteur(int,int);
            Vecteur(const Vecteur &right);
            ~Vecteur();
            Vecteur & operator=(const Vecteur &right);
            int operator==(const Vecteur &right) const;
            int operator!=(const Vecteur &right) const;
            double distance (Vecteur &v);
            void afficher ();
            const int *get_coord () const;
            void set_coord (int *tab);
       
        private:
            int coord[2];
      };
       
      inline const int *Vecteur::get_coord () const
      {
        return coord;
      }
       
      inline void Vecteur::set_coord (int *tab)
      {
        int i;
        for(i=0;i<2;i++)                    
           coord[i]=tab[i];
      }
       
      #endif
    2. Le fichier Vecteur.cpp
      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
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      #include<math.h>
      #include<iostream.h>
      #include "Vecteur.h"
       
      Vecteur::Vecteur()
      {
        coord[0]=0;
        coord[1]=0;  
      }
       
      Vecteur::Vecteur(int a, int b)
      {
        coord[0]=a;
        coord[1]=b;
      }
       
      Vecteur::Vecteur(const Vecteur &right)
      {
      }
       
      Vecteur::~Vecteur()
      {
      }
       
      Vecteur & Vecteur::operator=(const Vecteur &right)
      {
        int i;
        if (this!=&right){
           for(i=0;i<2;i++)
              coord[i]=right.coord[i];
           }
        return *this;
      }
       
      int Vecteur::operator==(const Vecteur &right) const
      {
        int i;
        for(i=0;i<2;i++){                    
           if (coord[0]!=right.coord[0])
                return 0;     
           }
        return 1;    
      }
       
      int Vecteur::operator!=(const Vecteur &right) const
      {
        int i;
        for(i=0;i<2;i++){                    
           if (coord[0]!=right.coord[0])
                return 1;     
           }
        return 0;      
      }
       
      double Vecteur::distance (Vecteur &q)
      {
        double a,b,c;
       
        a=fabs((double)q.coord[0]-(double)coord[0]);
        b=fabs((double)q.coord[1]-(double)coord[1]);  
        c=sqrt(pow(a,2)+pow(b,2));
        return c;
      }
       
      void Vecteur::afficher ()
      {
        cout<<"("<<coord[0]<<", "<<coord[1]<<")";
      }
    3. Le fichier Data.h
      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
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      #include "Vecteur.h"
       
      class Data 
      {
        public:
            Data();
            Data(Vecteur *v);
            Data(Vecteur *v,double d);
            Data(const Data &right);
            ~Data();
            Data & operator=(const Data &right);
            int operator==(const Data &right) const;
            int operator!=(const Data &right) const;
            double distance (Vecteur v);
            void afficher ();
            const Vecteur * get_Le_vecteur () const;
            void set_Le_vecteur (Vecteur * value);
       
        private:
            const double get_dist () const;
            void set_dist (double value);
       
        private: 
            double dist;
            Vecteur *Le_vecteur;
      };
       
      inline const double Data::get_dist () const
      {
        return dist;
      }
       
      inline void Data::set_dist (double value)
      {
        dist = value;
      }
       
      inline const Vecteur * Data::get_Le_vecteur () const
      {
        return Le_vecteur;
      }
       
      inline void Data::set_Le_vecteur (Vecteur * value)
      {
        Le_vecteur = value;
      }
       
      #endif
    4. Et enfin, le fichier Data.cpp
      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
      34
      35
      36
      37
      38
      39
      40
      41
      42
      43
      44
      45
      46
      47
      48
      49
      50
      51
      52
      53
      54
      55
      56
      57
      58
      59
      60
      61
      62
      63
      64
      65
      66
      67
      68
      69
      70
      71
      72
      73
      74
      75
      76
      77
      78
      79
      80
      81
      82
      83
      84
      85
      86
      87
      88
      89
      90
      91
      92
      93
      #include<iostream.h>
      #include "Data.h"
      #include "Vecteur.h"
       
      Data::Data()
      {
        Le_vecteur=NULL;
        dist=0;
      }
       
      Data::Data(Vecteur *v){
         Le_vecteur=v;
         dist=0;
      }
       
      Data::Data(Vecteur *v, double d){
         Le_vecteur=v;
         dist=d;
      }
       
      Data::Data(const Data &right)
      {
      }
       
      Data::~Data()
      {
      }
       
      Data & Data::operator=(const Data &right)
      {
        if (this!=&right){
           dist=right.dist;
           Le_vecteur=right.Le_vecteur;
        }
        return *this;
      }
       
      int Data::operator==(const Data &right) const
      {
        if (Le_vecteur==right.Le_vecteur && dist==right.dist)
           return 1;
           else
               return 0;
      }
       
      int Data::operator!=(const Data &right) const
      {
        if (Le_vecteur!=right.Le_vecteur || dist!=right.dist)
           return 0;
           else
               return 1;
      }
       
      double Data::distance (Vecteur v)
      {
        return Le_vecteur->distance(v);
      }
       
      void Data::afficher ()
      {
        Le_vecteur->afficher();
        cout<<" --> Distance du point requete : "<<dist<<"\n";
      }
       
       
      /*
      --------------------------------------------------------------------------
                                                 c'est un test
      --------------------------------------------------------------------------
      */
      int main(){
          int i,tab[2],*po;
          tab[0]=2;
          tab[1]=2;
          Vecteur *v1;
          *po=1;
          cout<<po;
          v1->set_coord(tab);
       
          if (d1==d2)
             cout<<"== -> egaux\n";
             else
                 cout<<"== -> pas egaux\n";
       
          if (d1!=d2)
             cout<<"!= -> diff\n";
             else
                 cout<<"!= -> pas diff\n";
       
          d3=d1;
          d3.afficher();
          return 0;
      }


    Voila et quand je compile ca génére 2 erreurs similaires pour deux fonctions differentes de la classe Data :
    • Data.cpp: undefined reference to `Vecteur::afficher()'
    • Data.cpp: undefined reference to `Vecteur::distance(Vecteur&)'


    Voila !!! c'est tout, et je m'excuse encore une fois si je ne me suis pas bien exprimer au début.

    Bien cordialement

  8. #8
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Penses tu à compiler ton fichier Vecteur.cpp ??
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  9. #9
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    Citation Envoyé par raptor70 Voir le message
    Penses tu à compiler ton fichier Vecteur.cpp ??
    oui bien sur, et il me donne comme quoi il arrive pas à trouver la fonction Main (ce qui est naturel).

    Bien cordialement

  10. #10
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Citation Envoyé par reeda Voir le message
    oui bien sur, et il me donne comme quoi il arrive pas à trouver la fonction Main (ce qui est naturel).

    Bien cordialement
    Parce que tu essayes de le compiler seul .. en tant que point d'entrée de ton programme ..

    Tu dois l'ajouter à ton projet ...

    Tout dépend de l'EDI que tu utilises..
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  11. #11
    Expert éminent sénior
    Avatar de koala01
    Homme Profil pro
    aucun
    Inscrit en
    Octobre 2004
    Messages
    11 626
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 626
    Points : 30 684
    Points
    30 684
    Par défaut
    Bon, comme les fichiers ont l'air bon (je n'ai parcouru le code qu'en diagonale extrêmement rapidement ), il faut sans doute aller voir du côté de la manière dont tu compile ton projet.

    Et pour cela, il nous faudrait quelques précisions supplémentaires sur la manière dont tu t'y prend:

    Le fais tu grâce à un Makefile (ou équivalent), ou via un EDI particulier

    Si c'est grâce à un Makefile, peux tu nous en donner le contenu

    Si c'est via un EDI particulier, lequel, et peux tu nous donner quelques précisions sur la manière dont tu gère le projet (il y aura sans doute des questions plus précises, en fonction de l'EDI utilisé )
    A méditer: La solution la plus simple est toujours la moins compliquée
    Ce qui se conçoit bien s'énonce clairement, et les mots pour le dire vous viennent aisément. Nicolas Boileau
    Compiler Gcc sous windows avec MinGW
    Coder efficacement en C++ : dans les bacs le 17 février 2014
    mon tout nouveau blog

  12. #12
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    Citation Envoyé par koala01 Voir le message
    Bon, comme les fichiers ont l'air bon (je n'ai parcouru le code qu'en diagonale extrêmement rapidement ), il faut sans doute aller voir du côté de la manière dont tu compile ton projet.

    Et pour cela, il nous faudrait quelques précisions supplémentaires sur la manière dont tu t'y prend:

    Le fais tu grâce à un Makefile (ou équivalent), ou via un EDI particulier

    Si c'est grâce à un Makefile, peux tu nous en donner le contenu

    Si c'est via un EDI particulier, lequel, et peux tu nous donner quelques précisions sur la manière dont tu gère le projet (il y aura sans doute des questions plus précises, en fonction de l'EDI utilisé )
    salut,

    Comme EDI j'utilise Dev C++ version 4.9.9.2
    et je ne sais pas beaucoup l'utiliser, d'ailleurs c'est la première fois que je programme un gros projet en C++,

    Si vous savez comment faire avec ce EDI, ou si vous connaissez un autre qui soit mieux je vous serez trés reconnaissant.

    Le problème c'est que j'ai l'habitude de travailler en Java, avec la notion de package qui resolve ce ik!!

    PS: je travail sous Windows XP SP2

    Merci
    Bien cordialement

  13. #13
    Expert éminent
    Avatar de raptor70
    Inscrit en
    Septembre 2005
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Septembre 2005
    Messages : 3 173
    Points : 6 812
    Points
    6 812
    Par défaut
    Comme tu as ajouter Data.cpp à ton projet .. ajoute Vecteur.cpp
    Mes Tutos DirectX, OpenGL, 3D : http://raptor.developpez.com/

  14. #14
    Membre expérimenté
    Avatar de coyotte507
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 1 327
    Points : 1 452
    Points
    1 452
    Par défaut
    Salut

    Sinon tu as une solution extrême et temporaire, c'est de faire un:

    Dans ton fichier principal.

    Bien sûr dès que tu auras réussi à ajouter tous tes fichiers à ton projet (d'ailleurs je te conseille codeblocks à la place de Dev-C++, le développement de Dev-C++ a été abandonné il y a au moins 2 ans), tu devras supprimer cette ligne

  15. #15
    Membre habitué Avatar de reeda
    Formateur en informatique
    Inscrit en
    Août 2006
    Messages
    367
    Détails du profil
    Informations personnelles :
    Âge : 38

    Informations professionnelles :
    Activité : Formateur en informatique

    Informations forums :
    Inscription : Août 2006
    Messages : 367
    Points : 150
    Points
    150
    Par défaut
    Citation Envoyé par coyotte507 Voir le message
    Salut

    Sinon tu as une solution extrême et temporaire, c'est de faire un:

    Dans ton fichier principal.

    Bien sûr dès que tu auras réussi à ajouter tous tes fichiers à ton projet (d'ailleurs je te conseille codeblocks à la place de Dev-C++, le développement de Dev-C++ a été abandonné il y a au moins 2 ans), tu devras supprimer cette ligne
    salut,

    le include tout seul sans que je crée un projet ne marche pas

    Mais quand j'ai ajouté mes fichiers à un projet ca passe sans problème hamdoulilah

    je veux faire une petite remarque au passage sur le fait que le develloppement de Dev C++ ,soit abondonné ne veut pas dire que nous aussi on ne doit plus l'utiliser :S

    mais bon, merci beaucoup pour toutes vos réponses

    Bien cordialement
    Mohammed Reda

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 6
    Dernier message: 14/12/2008, 02h12
  2. Réponses: 4
    Dernier message: 06/04/2008, 18h34
  3. Héritage d'une classe MFC et d'une classe non MFC
    Par Etienne Paquette dans le forum MFC
    Réponses: 7
    Dernier message: 04/12/2007, 20h19
  4. Réponses: 2
    Dernier message: 29/03/2007, 12h02
  5. Réponses: 14
    Dernier message: 15/12/2005, 18h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo