| noname115000 a întrebat:

In c++ daca am o clasa de baza, cu cateva metode virtuale sa zicem, din care derivez alte clase, iar in clasele acelea adaug alte metode pe care clasa de baza nu le contine, cum reusesc sa accesez acele metode ale claselor derivate prin intermediul unui pointer la clasa de baza.
Luam exemplul cu animalul, am o metoda virtuala sunet, derivez clasa caine, in care adaug metoda musca(). Fac Animal *p=new Caine("nume_caine"); apoi >p-musca(); Voi primi o eroare cum ca metoda musca nu apartine clasei de baza Animal. Care ar fi solutia in acest caz?

2 răspunsuri:
suntserios
| suntserios a răspuns:

Practica corecta este sa declari metoda mucsa() ca metoda virtuala in clasa de baza

| noname115000 explică (pentru suntserios):

Pe principiul asta am mers dar profului de la facultate nu-i convine si a zis sa gasim altcevalaughing)