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 de classe et d'attribut


Sujet :

C++

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Par défaut Problème de classe et d'attribut
    Ne voyez aucun double sens dans ce titre ...

    J'ai l'impression que je cherche à faire quelque chose d'impossible en C++ (Défaut du développeur Java ...)

    Je souhaite avoir une classe A. Cette classe aurait pour attribut, un attribut de type classe B. Mais je veux que B puisse connaitre A (et inversement).

    En gros qqch genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
     
    include "b.h"
    class A
    {
        private:
            B b;
        public:
            A(); 
    };
    et

    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:
            B(); 
    };
    J'ai essayé diverse méthode, mais le compilateur m'insulte à chaque fois en butant sur les "private: A a;" ou "private: B b;"

    Merci d'éclairer ma lanterne.

  2. #2
    Expert éminent
    Avatar de Médinoc
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Septembre 2005
    Messages
    27 395
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2005
    Messages : 27 395
    SVP, pas de questions techniques par MP. Surtout si je ne vous ai jamais parlé avant.

    "Aw, come on, who would be so stupid as to insert a cast to make an error go away without actually fixing the error?"
    Apparently everyone.
    -- Raymond Chen.
    Traduction obligatoire: "Oh, voyons, qui serait assez stupide pour mettre un cast pour faire disparaitre un message d'erreur sans vraiment corriger l'erreur?" - Apparemment, tout le monde. -- Raymond Chen.

  3. #3
    Membre expérimenté Avatar de Ksempac
    Inscrit en
    Février 2007
    Messages
    165
    Détails du profil
    Informations forums :
    Inscription : Février 2007
    Messages : 165
    Par défaut
    Surtout ne pas faire de double inclusion des .h sinon la compilation ne peut pas s'effectuer :
    Je tente de compiler a.h, il me faut bien b.h, qui me demande a.h, qui me demande b.h.... Le compilateur refuse a juste titre de se laisser embarquer la dedans

    La methode correcte dans a.h :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    class B; // On declare qu'une classe B existe
     
    class A
    {
        private:
            B* b; // Note que c'est un pointeur
        public:
            A(); 
    };
    et 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:
            B(); 
    };

  4. #4
    Membre averti
    Inscrit en
    Avril 2006
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 38
    Par défaut
    Gné .... J'ai honte ....


    Merci beaucoup en tout cas

    J'avais pas pensé au mot clé référence...

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

Discussions similaires

  1. Problème de contrôle d'un attribut de classe
    Par 30barrett40 dans le forum C++
    Réponses: 3
    Dernier message: 13/03/2007, 11h00
  2. Problème sur classe Transformer avec les <!--
    Par tykool dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 10/01/2006, 10h20
  3. Problème de classe
    Par DeusXL dans le forum DirectX
    Réponses: 15
    Dernier message: 04/12/2005, 14h37
  4. Problème de classe
    Par tidou dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 14/10/2005, 17h49
  5. [FLASH MX2004] Problème de classe
    Par JulPoWeR dans le forum Flash
    Réponses: 1
    Dernier message: 10/07/2005, 22h51

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