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 :

problème d'include [Débutant(e)]


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4
    Par défaut problème d'include
    salut a tous je débute en c++ et j'ai de nombreuse erreurs que je ne sais pas résoudre:
    en gros je doit réaliser une classe point qui permet de manipuler un point du plan.
    j'ai les erreurs suivantes:
    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
    Compilateur: Default compiler
    Building Makefile: "C:\Dev-Cpp\Makefile.win"
    Exécution de  make...
    make.exe -f "C:\Dev-Cpp\Makefile.win" all
    g++.exe -c main.cpp -o main.o -I"C:/Dev-Cpp/lib/gcc/mingw32/3.4.2/include"  -I"C:/Dev-Cpp/include/c++/3.4.2/backward"  -I"C:/Dev-Cpp/include/c++/3.4.2/mingw32"  -I"C:/Dev-Cpp/include/c++/3.4.2"  -I"C:/Dev-Cpp/include"   
     
    main.cpp:3:21: pointtt.h: No such file or directory
    main.cpp: In function `int main()':
    main.cpp:9: error: `point' undeclared (first use this function)
    main.cpp:9: error: (Each undeclared identifier is reported only once for each function it appears in.)
    main.cpp:9: error: expected `;' before "p1"
     
    main.cpp:10: error: expected `;' before "p2"
    main.cpp:11: error: expected `;' before "p3"
    main.cpp:12: error: `p1' undeclared (first use this function)
    main.cpp:12: error: expected primary-expression before '<<' token
    main.cpp:13: error: `p2' undeclared (first use this function)
    main.cpp:13: error: expected primary-expression before '<<' token
     
    main.cpp:18: error: expected primary-expression before '<<' token
    main.cpp:19: error: expected primary-expression before '<<' token
    main.cpp:20: error: expected primary-expression before '<<' token
     
    make.exe: *** [main.o] Error 1
     
    Exécution terminée
    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
    #include <cstdlib>
    #include <iostream>
    #include <pointtt.h>
     
    using namespace std;
     
    int main()
    {
        point p1;
        point p2;
        point p3(10,15),p4(20,30);
        cout<<"p1="<<p1.affiche();<<endl;
        cout<<"p2="<<p2.affiche();<<endl;
        p1.saisir();
        p2.saisir();
        p1.deplace(17,65);
        p2.deplace(18,686);
        cout<<"apres deplacement p1="<<p1.affiche();<<endl;
        cout<<"apres deplacement p2="<<p2.affiche();<<endl;
        cout<<"dist entre p1 et p3"<<p1.dist();<<endl;
        system("PAUSE");
        return EXIT_SUCCESS;
    }
    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
    #include<iostream>
    using namespace std;
    #include<math.h>
    #include"pointttt.h"
     
    point ::point()
    {
                 x=0;
                 y=0;
                 }
    point::point(double a, double b)
    {
                        this->x=a;
                        this->y=b;
                        }
    void point::affiche ()
    {
         cout<<"x="<<this->x<<endl;
         cout<<"y="<<this->y<<endl;
         }
    void point::deplace(double dx,double dy)
    {
         this->x=dx;
         this->y=dy; 
          }    
    void point:: saisir()
    {
         cout<<"saisir x";
         cin>>this->x;
         cout<<"saisir y";
         cin>>this->y;
         } 
     double  point::distance(point p)
     {
             return sqrt(x*dx+y*dy);
             } 
    point point::milieu(&point p)
    {
          point px;
          px((this->x+dx/2),(this->y+dy/2));
          return px;
          }
    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
    #include<iostream>
    using namespace std;
    #inlude<math.h>
     
    class point
    {
          private:
                  double x;
                  double y;
          public:
                 point();
                 point(double dx, double dy);
                 void affiche();
                 void saisir();
                 double distance(pont p);
                 point milieu(point p);
                 void deplace(double dx,double dy);
     
          };

  2. #2
    Rédacteur
    Avatar de 3DArchi
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    7 634
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 7 634
    Par défaut
    Salut,
    Pourquoi faut-il arrêter d'utiliser Dev-C++ ?. D'autant que tu as une version de gcc plutôt poussiéreuse si j'en crois tes traces. Tu trouveras dans la page outils et compilateurs de la rubrique des environnements de développement beaucoup plus récent.

    Pour ton problème, il faut probablement ajouter le répertoire où se trouvent les fichiers d'en-têtes à la liste des répertoire d'include.

  3. #3
    Membre à l'essai
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 4
    Par défaut
    j'ai aussi code block mais bon je suis habitué a dev ++
    de plus c'est celui qu'on utilise à la fac pour les controle :/

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

    Informations professionnelles :
    Activité : aucun

    Informations forums :
    Inscription : Octobre 2004
    Messages : 11 644
    Par défaut
    Salut!

    La solution réside dans le tout premier message d'erreur, à savoir:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    main.cpp:3:21: pointtt.h: No such file or directory
    En gros, lorsqu'il essaye de compiler main.cpp, le compilateur n'arrive pas à retrouver le fichier pointtt.h pour l'inclure.

    Il y a plusieurs raisons possibles, à toi de trouver laquelle
    • Soit le chemin d'accès permettant de trouver pointtt.h n'est pas défini dans les options de compilation (il faut l'ajouter avec le flag -I<chemin vers le dossier ad-hoc > )
    • Soit tu t'es trompé dans l'orthographe du nom de fichier, mais, dans ce cas, tu aurais sans doute aussi un problème pour compiler le fichier d'implémentation de ta classe point
    ceci dit...

    Il vaut mieux éviter le recours à la directive using namespace std; dans les fichiers d'en-tête car elle aura tendance à se répercuter partout où le fichier d'en-tête sera inclus de manière directe ou indirecte.

    Ensuite, il faut savoir que dev-c++ n'est plus maintenu maintenant depuis très longtemps, et qu'il est donc fortement recommandé de passer, par exemple, à Code::blocks

    Enfin, il semblerait que tu utilises toujours Gcc 3.4, qui est vraiment une version anté déluvienne de Gcc.

    A titre d'exemple, la version stable de Gcc est la version 4.6, déjà utilisée par MinGW...

    Pour autant que je m'en souvienne, la version 3.4 correspond à la version stable au moment de la mise au point de la dernière norme, il serait vraiment temps de... passer à plus récent
    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

Discussions similaires

  1. [Configuration] problème d'include à cause de l'arborescence
    Par hoaxpunk dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 15/12/2005, 17h00
  2. [EasyPHP] Problème d'include de fichier et adresse des images
    Par doudou34 dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 8
    Dernier message: 02/11/2005, 21h46
  3. problèmes avec "include file" pour une page asp
    Par chipsense dans le forum ASP
    Réponses: 1
    Dernier message: 02/09/2005, 15h22
  4. [JSP] problème d'include ou d'import
    Par lipao17 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 06/04/2005, 13h39
  5. Problème d'include sous Dev-c++ 4.9.8.0
    Par Argonz dans le forum Dev-C++
    Réponses: 16
    Dernier message: 20/11/2003, 17h36

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