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 :

creation dune classe et utilisation


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 84
    Par défaut creation dune classe et utilisation
    salut,

    j ai cree un nouvelle classe et des methodes qui vont avec.
    J ai quelques notions de java et lorsque je créais une classe en java je pouvais m en servir dans un autre fichier que celui de la classe elle même, apparement en c++ ce n est pas le cas.
    Quelle est la solution a ce probleme ?
    Merci

  2. #2
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Il faut inclure le fichier d'entête !

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #include "ton_fichier.h"
    Ne pas oublier d'empêcher la multi déclaration de ton header qui posera problème.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    //ton_fichier.h
     
    #ifndef _H_MON_FICHIER
    #define _H_MON_FICHIER
     
    // ta classe
     
    #endif // _H_MON_FICHIER (commentaire pour faire propre)

    Un tour dans la FAQ ne ferait pas de mal

    Comment structurer ma classe en un fichier .h et un fichier .cpp ?

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 84
    Par défaut
    ok je te remercie ! desole de ne pas etre aller voir dans la faq...je debute en c++, je sais pas si j aurai fait le rapprochement entre mon probleme et la rubrique que tu m as indique

  4. #4
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Août 2006
    Messages
    84
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Août 2006
    Messages : 84
    Par défaut
    euh par contre j ai cherche comment on crée un .h, et j ai pas trouvé

  5. #5
    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,
    Citation Envoyé par le_voisin
    euh par contre j ai cherche comment on crée un .h, et j ai pas trouvé
    C'est un simple fichier texte "brut", comme tout fichier de code source (que ce soit en C, en C++, en java ou en n'importe quoi)...

    L'extension .h est une simple convention qui signifie "header"(entete), et qui indique qu'il n'y a, normalement, que les délcarations dans le fichier.

    Un compilateur, quand il est au travail ne peut en effet travailler qu'avec ce qu'il connait, et qui se limite à "ce dont il a déjà rencontré une déclaration valabe avant la ligne où il se trouve" (hormis, tu t'en doutera, les déclarations elles-memes )

    De la meme manière, les fichiers qui utilisent une classe (dans ton exemple, mais ca peut etre bien plus générique) n'auront jamais besoin que des déclarations.

    Le fichier d'implémentation (celui qui dit comment utiliser les classes déclarées) a, lui aussi, besoin des déclarations pour travailler.

    Cela donne, si tu crées une classe MaClasse, un fichier (nommé maclasse.cpp) qui prendra la forme de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    #include "maclasse.h" //inclusion de la déclaration de la classe
     
    // tout le reste du code
    un fichier "maclasse.h" avec les déclarations sous la forme de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #ifndef MACLASSE_H
    define MACLASSE_H
     
    class MaCLasse
    {
        //déclarations des membres et méthodes
    };
    #endif //MACLASSE_H
    et, dans tous les fichier d'entete des autres classes qui ont besoin d'utiliser MaClasse, une structure du fichier sous la forme de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    #ifndef MON_AUTRE_CLASSE_H //ca, c'est strictement pareil
    #define MON_AUTRE_CLASSE_H
    #include "maclasse.h" //on a besoin des déclarations de MaClasse
    class Mon_Autre_Classe
    {
        //déclarations des membres et méthodes
    };
    #endif //MON_AUTRE_CLASSE_H
    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

  6. #6
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Citation Envoyé par koala01
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #ifndef MON_AUTRE_CLASSE_H //ca, c'est strictement pareil
    Au lieu de

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #ifndef MON_AUTRE_CLASSE_H
    utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    #ifndef H_MON_AUTRE_CLASSE
    Sujet déjà traité en C (extensible à C++ je suppose)
    http://www.developpez.net/forums/sho...t=34611&page=1

    Pour les modérateurs, FAQ à modifier ?
    Comment structurer ma classe en un fichier .h et un fichier .cpp ?

Discussions similaires

  1. Probleme lors de la creation dune nouvelle classe cpp en utilisant XCODE
    Par mounak1991 dans le forum Autres éditeurs
    Réponses: 18
    Dernier message: 21/05/2014, 16h37
  2. Réponses: 0
    Dernier message: 10/05/2012, 11h37
  3. Réponses: 8
    Dernier message: 13/11/2006, 16h45
  4. Creation dune Form ds un Thread
    Par Soulama dans le forum Langage
    Réponses: 1
    Dernier message: 17/01/2006, 12h41
  5. Parseur XML to Java pour creation de Class
    Par yannick101 dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 18/07/2005, 14h20

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