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.