Dědění
napište bázovou třídu, která bude mít virtuální a nevirtuální metody pro tisk. Vytvořte tři zděděné třídy – první bude mít přetíženy obě tiskové metody, druhá bude mít přetíženu pouze virtuální a třetí přetíží pouze nevirtuální. Vytvořte od každé třídy jeden objekt. Pro každou třídu vytvořte ukazatele (kolik dává smysl) a inicializujte je vytvořenými instancemi dané třídy a instancemi předků. Pro všechny takto vytvořené objekty a ukazatele volejte neviruální a virtuální metodu a sledujte co se děje.
Napište si bázovou třídu, a dvě třídy zděděné. Objekt jedné zděděné třídy je zároveň prvkem druhé zděděné třídy. Napište konstruktory a destruktory a sledujte pořadí jejich volání při vytváření prvků jednotlivých tříd (bázové i zděděných).
================
Motivace (orientační pomocná kostra programu):
clas A{
A () {cout << „konstruktor A“;}
virtual ~A() {cout << „destruktor A“;} // zkusit s virtual a bez virtual
virtual TiskV()
Tisk ()
}
class B:A {
B()
~B()
virtual TiskV
}
class C:A {
C()
~C()
A aa
B bb
Tisk()
}
A aa
B bb
C cc
C *pc1 = &aa, *pc2 = &bb , *pc3 = &cc;
pc1->TiskV()
pc1->Tisk()
pc2-> …
pc3-> ...
Poslední upravy 2006-12-08