Sobes.tech
Junior — Middle

Vysvetlite koncept virtuálnej tabuľky a jej úlohu pri implementácii polymorfizmu v objektovo orientovanom programovaní.

sobes.tech AI

Odpoveď od AI

Virtuálna tabuľka (vtable) je dátová štruktúra používaná v objektovo orientovaných jazykoch na podporu dynamického (za behu) polymorfizmu. Obsahuje ukazovatele na funkcie (metódy), ktoré môžu byť prepísané v odvodených triedach.

Keď objekt volá virtuálnu metódu, program prostredníctvom vtable určuje, ktorú implementáciu metódy volať — tú základnej triedy alebo tú prepísanú v odvodenom triede. To umožňuje používať rovnaké rozhranie pre rôzne typy objektov, zabezpečujúc flexibilitu a rozšíriteľnosť kódu.

Príklad: ak existuje základná trieda Animal s virtuálnou metódou sound(), a triedy Dog a Cat túto metódu prepíšu, pri volaní sound() cez ukazovateľ na Animal bude volaná príslušná metóda podtriedy vďaka vtable.