Code:
class Osoba{...}
class Ratnik: virtual protected Osoba
class Obicni: virtual public Osoba
class Specijalac: public Ratnik, public Obicni
Zašto mi ne radi polimorfizam oblika:
Ratnik ratn;
Specijalac spec;
Osoba *pokaziva = &ratn; // da li znaci da ne mozemo primjenjivati polimorfizam na protected i private nasljeđivanja
Radi sa:
Osoba *pokazivac = &spec;
// Zasto bi ovako radilo, a klasa Specijalac je derivirana od Ratnik koja je protected
class Osoba{...}
class Ratnik: virtual protected Osoba
class Obicni: virtual public Osoba
class Specijalac: public Ratnik, public Obicni
Zašto mi ne radi polimorfizam oblika:
Ratnik ratn;
Specijalac spec;
Osoba *pokaziva = &ratn; // da li znaci da ne mozemo primjenjivati polimorfizam na protected i private nasljeđivanja
Radi sa:
Osoba *pokazivac = &spec;
// Zasto bi ovako radilo, a klasa Specijalac je derivirana od Ratnik koja je protected