Informatică Programare
Polimorfism in C++ exemple
Polimorfismul în C++ se referă la capacitatea unui obiect de a se comporta diferit în funcție de context, implementat prin funcții virtuale și legare tardivă. De exemplu, o funcție sunet() poate produce rezultate diferite pentru obiecte de tip Animal sau Caine.
Implementare cu funcții virtuale
- 1 Pasul 1 Declară o funcție virtuală în clasa de bază: class Baza { public: virtual void afiseaza() { cout << "Baza"; } };
- 2 Pasul 2 Suprascrie funcția în clasa derivată: class Derivata : public Baza { public: void afiseaza() override { cout << "Derivata"; } };
- 3 Pasul 3 Folosește pointeri sau referințe pentru polimorfism: Baza* b = new Derivata(); b->afiseaza(); // Afișează "Derivata"
Exemple practice
- Forme geometrice Clasa Forma are virtual float arie(). Cerc și Pătrat suprascriu arie() pentru calcul specific.
- Animale Clasa Animal cu virtual void sunet(). Caine și Pisică suprascriu sunet() cu "Ham" și "Miau".
Folosește funcții virtuale și pointeri de bază pentru a obține polimorfism dinamic în programe.