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

Langage C++ Discussion :

descendre dans un héritage? (au lieu de monter)


Sujet :

Langage C++

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12
    Points : 7
    Points
    7
    Par défaut descendre dans un héritage? (au lieu de monter)
    Bonsoir, je poste ici ma question, car aucun de mes camarades de classe n'a pu me répondre.
    Pour expliquer la situation,
    j'ai une classe ZOO qui contient une liste de PERSONNE, dont SOIGNEUR et ANGENT héritent. Mon but est d'afficher "la liste triée de toutes les personnes du zoo incluant la liste de leurs charges" sachant que leur charges diffèrent s'ils sont soigneurs ou agents...
    Comment puis-je obtenir ces informations?
    Comment puis-je à partir d'une personne obtenir les attributs d'un soigneur ou d'un agent?

    Merci de l'attention que vous porterez à ma question, et j'espère que c'était compréhensible...

  2. #2
    Membre averti Avatar de Nogane
    Profil pro
    Inscrit en
    Juin 2008
    Messages
    241
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France

    Informations forums :
    Inscription : Juin 2008
    Messages : 241
    Points : 323
    Points
    323
    Par défaut
    Bonsoirs,

    Descendre dans un héritage, au lieu de monter, est typiquement quelque chose que l'on évite de faire.

    Une bonne solution dans ton cas c'est de donner a ta class PERSONNE une fonction virtuel qui auras pour but d'afficher les infos de la personne, en fonction du type. Et c'est la toute la beauté du polymorphisme, c'est qu'on as pas besoin de connaitre le type exacte de la PERSONNE, du moment qu'on sait que c'est une PERSONNE.

    Plutôt que de réinventer un exemple, voici un lien dans la FAC qui devrait t'aider.
    http://cpp.developpez.com/faq/cpp/?p...isme_inclusion

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    oh merci!
    c'est simple en plus (bon en même temps quand on sait pas, on sait pas XD )
    merci beaucoup!

  4. #4
    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
    Points : 13 017
    Points
    13 017
    Par défaut
    Salut,
    Et pour les fonctions virtuelles, tu peux voir ce tuto tout chaud.

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Janvier 2010
    Messages : 12
    Points : 7
    Points
    7
    Par défaut
    merci ça marche nikel!

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

Discussions similaires

  1. Gestions associations dans l'héritage
    Par FranckRav dans le forum UML
    Réponses: 9
    Dernier message: 10/03/2008, 11h38
  2. [1.x] Récupération dans une variable au lieu d'affichage
    Par Naeh dans le forum Symfony
    Réponses: 4
    Dernier message: 30/10/2007, 14h30
  3. Réponses: 1
    Dernier message: 21/08/2007, 18h02
  4. Réponses: 3
    Dernier message: 16/05/2007, 19h35
  5. Dans une structure, au lieu d'un #define
    Par Happy dans le forum C++
    Réponses: 5
    Dernier message: 04/08/2006, 01h22

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