Partage
  • Partager sur Facebook
  • Partager sur Twitter

polymorphie

application

    21 juin 2008 à 14:43:14

    bonjour;
    j ai essai d ecrire trois classes, la premiere est principal et les 2 autres sont des classes eritier de la premiere.
    voici mon problem:
    1)j aimerai implemente a chaque classe independament des autres la methode"imprime"
    2)j aimerai a partir de la fonction main() demander les donner d ume classe et avoir um appercu de se qui
    sera imprime.
    en lisant dans un document sur les polymorphies j ai vue appliction qui est celle ci:

    class A
    { public:
    virtual void drucke() { cout << "So druckt A" << endl; };
    };

    class B: public A
    { public:
    void drucke() { cout << "So druckt B" << endl; };
    };

    class C: public A
    { public:
    void drucke() { cout << "So druckt C" << endl; };
    };

    void main()
    {
    A* feld[2];
    B b;
    C c;
    feld[0] = &b;
    feld[1] = &c;

    feld[0]->drucke(); feld[1]->drucke();
    }

    je ne sait pas comment l applique dans mon probleme,je ne parvient pas a identifier par exemple les variable b et c.
    j espere m avoir fait compris et merci d avance pour votre aide.
    • Partager sur Facebook
    • Partager sur Twitter
      21 juin 2008 à 15:29:37

      Fait directement B *b = new B(); et pareil pour C, et là normalement le polymorphisme devrait s'appliquer. En sachant que c'est l'implémentation dans la classe initiale qui sera appellé lorsque tu appelleras drucke(), meme si le conteneur contient des objets de type A.
      • Partager sur Facebook
      • Partager sur Twitter

      polymorphie

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown