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 :

association entre 2 classes


Sujet :

C++

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Par défaut association entre 2 classes
    Bonjour

    jai cherché pas mal
    mais je n'ai rien trouvé pour coder une association unidirectionnelle de cardinalité n entre une classe A et B ?

    sachant que cest la classe C crée les instances A


    merchi davance

  2. #2
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut
    J'ai été intrigué par ta demande. Et en cherchant sur google, je suis tombé sur . C'est surtout les concepts développés qui peuvent t'aider. Ensuite, il faut transposer en C++ les exemples données en Java.

    Intéressant à développer pour ma part dans de futures applications.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Par défaut
    Je voulais une réponse claire et précise , sans redirection , surtout sur un truc que j'ai vu aussi, etant debutant en c++ , demander de traduire du java en c++ , et une relation , pfiou ...

    donc si quelqun aurait un morceau de code traduisant ma demande du premier post ca serait sympa

    cest juste pour voir comment ca se passe , pas besoin d'un cas dur , juste la base , jai essyayé sur mon projet , mais la classe B ne voit pas A grace au test effectué , ladresse du poiteur du type de A dans le h. de B nest pas bonne

    Cordialement

  4. #4
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Si j'ai bien compris ta demande, il y a pas mal de possibilités pour faire ça, selon la nature de la relation souhaité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
    class A
    {
    // 
    private:
      std::vector<B> myBs;
      // Ou : std::vector<B*> myBs;
      // Ou : std::vector<shared_ptr<B> > myBs;
      // Ou : std::map<std::string, B> myBs;
      // Ou : std::map<std::string, B*> myBs;
      // Plein d'autres variantes encore...
    };
     
    class B
    {
    };
    Pour être plus précis, il faut répondre à des question du style : Est-ce qu'un B peut exister en dehors du fait d'être une sous-partie d'un A ? Comment A différencie-il les différents B qu'il connaît ? Que se passe-t-il pour les B si je détruit le A correspondants ?...
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Par défaut
    tu n'as peut etre pas vu ? je suis debutant , je connais donc pas etre cette methode .... tu n'as pas plus simple ?

  6. #6
    Rédacteur/Modérateur
    Avatar de JolyLoic
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2004
    Messages
    5 463
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 50
    Localisation : France, Yvelines (Île de France)

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

    Informations forums :
    Inscription : Août 2004
    Messages : 5 463
    Par défaut
    Plus simple que : std::vector<B> myBs; ?

    Non. Il n'y a pas. Mais cette réponse simple n'est pas forcément la bonne, selon ce que tu veux faire.

    Plus simple que se poser les bonnes questions ? Non plus.

    Comme je te l'indiques, la question que tu as posée est incomplète. Il est impossible d'y répondre dans l'état. Donc soit tu donnes un cas d'application concret, et dans ce cas on pourra intuiter les réponses aux points que tu n'as pas précisés, soit tu reste dans l'abstrait et la théorie, mais dans ce cas, débutant ou pas, si tu veux avoir une réponse et non pas des pistes de réflexion, il faudra poser la bonne question.

    Par exemple, dans un logiciel de dessin, une page qui contient des objets graphiques (rectangles, cercles...) peut répondre à la définition "association unidirectionnelle de cardinalité n". De même, dans dans un logiciel de diaporama, un diaporama aura une relation "association unidirectionnelle de cardinalité n" avec les photos qui le compose. Pourtant, les solutions pour modéliser ces deux cas en C++ seront très différentes.
    Ma session aux Microsoft TechDays 2013 : Développer en natif avec C++11.
    Celle des Microsoft TechDays 2014 : Bonnes pratiques pour apprivoiser le C++11 avec Visual C++
    Et celle des Microsoft TechDays 2015 : Visual C++ 2015 : voyage à la découverte d'un nouveau monde
    Je donne des formations au C++ en entreprise, n'hésitez pas à me contacter.

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations personnelles :
    Âge : 61
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut
    Avoir du code en réponse ne sera pas te rendre service. J'en parle en connaissance de cause pour avoir pris au départ le même chemin.

    Jusqu'au jour où mon prof a réussi à me faire le déclic sur comment appréhender la programmation : le pseudo-code ou encore l'algorithme.

    Si je t'ai passé le lien, c'est pour saisir le concept des relations qui peuvent dans ce cas se créer entre deux classes. Visualiser avant même de coder ce qui se passe, c'est déjà avoir résolu 90% de ton problème. Les 10% qui reste, c'est simplement l'application de la "mécanique" de la programmation (du genre savoir ce qu'est une fonction membre d'une classe, ou une variable dans une classe, ou une classe héritée, etc..).

    J'apprécie beaucoup ce site car dans mes questions je reçois des réponses qui m'expliquent ce que j'ai pas saisi. Me transmettre un résultat brut de fonderie (le code final) ne m'intéresse pas.

    J'espère que tu comprends cette "philosophie" ..

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    371
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 371
    Par défaut
    Bon pas grave , merci quand meme

Discussions similaires

  1. deux associations entre deux classes
    Par hamza_bba dans le forum Diagrammes de Classes
    Réponses: 5
    Dernier message: 21/03/2009, 15h40
  2. Association entre deux classes heritees ?
    Par graphicsxp dans le forum Diagrammes de Classes
    Réponses: 3
    Dernier message: 17/03/2009, 15h35
  3. Association entre deux classes (partager les methodes)
    Par shaiton dans le forum Débuter
    Réponses: 3
    Dernier message: 18/02/2009, 17h21
  4. Réponses: 7
    Dernier message: 25/08/2008, 16h13
  5. Association entre deux classes en dotnet
    Par lulu3111 dans le forum C++/CLI
    Réponses: 4
    Dernier message: 18/04/2007, 21h15

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