next up previous contents
Elõre: Dinamikus objektumok Fel: Virtuális függvények Vissza: Késõi összerendelés

Virtuális függvények deklarálása

A virtuális függvények deklarálásának szintaktikája nagyon egyszerû: a függvénymezõ elsõ deklarálásakor helyezzük el a virtual típusmódosító szót is:

            virtual void show(void);
            virtual void hide(void);
Figyelem! Csak függvénymezõk deklarálhatók virtuális függvényekként. Ha egy függvényt egyszer már virtuálisnak deklaráltunk, akkor egyetlen származtatott osztályban sem deklarálhatjuk újra az adott függvényt ugyanolyan paraméter-szignatúrával, de más visszatérési típussal. Ha egy egyszer már virtuálisnak deklarált függvényt egy származtatott típusban újra deklaráljuk és az újbóli deklaráció alkalmával ugyanolyan viszszatérési típust és paraméter-szignatúrát alkalmazunk, mint a korábbi deklarációban, akkor az újonnan deklarált függvény automatikusan virtuális függvény lesz. Természetesen egy virtuális függvényt más paraméter-szignatúrával újradeklarálhatunk, de akkor erre a változatra a virtuális függvénykezelõ rendszer nem fog mûködni. Az azonos szimbólumhoz rendelt különbözõ jelentések (function overloading (függvénynév átdefiniáló) - lásd a többrétûségnél) használata sok veszélyt rejthet, úgyhogy ezt csak gyakorlott C++ programozóknak ajánljuk.