Vitajte na [www.pocitac.win] Pripojiť k domovskej stránke Obľúbené stránky
Určte , kedy použiť virtuálne destruktor . Destruktor triedy by mali byť virtuálne , keď objekt odvodené triedy bude zničený s odvolaním sa na základné trieda destruktor . Destruktor musí byť virtuálny , keď zmažete ukazovateľ na objekt a je možné , že to ukazuje na odvodené triede .
2
dôležitý rozdiel medzi destructor a iných metód členských . V oboch prípadoch , je vyvolaná v prípade , že je vykonávaná metóda odvodené triedy . Avšak , základná trieda destruktor je následne vyzval že to sa nestane s inými metódami
3
Zoberme si nasledujúci príklad virtuálne destruktor : .
# Include class Base_class { public : Base_class ( ) { cout //virtual kľúčové slovo je potreba herevirtual ~ Base_class ( ) { cout } , trieda Derived_class : public Base_class { public : Derived_class ( ) { cout ~ Derived_class ( ) { cout } ; void main ( ) { Base_class * p = new Derived_class ( ) , odstrániť p ; }
4
Dbajte na použitie virtuálne kľúčové slovo v príklade v kroku 3. Ak deštruktory základné triedy neboli deklarované ako virtuálne destruktor odvodené triedy by sa nazýva .
5
Realizovať aspoň prázdne telo pre virtuálne destruktor od čisto virtuálne funkcie nemôže byť vyhlásený .