Tabulka virtuálních metod

Technology
12 hours ago
8
4
2
Avatar
Author
Albert Flores

Tabulka virtuálních metod, zkráceně TVM, je implementační mechanizmus používaný v programovacích jazycích pro podporu dynamického výběru (dynamic dispatch) funkcí za běhu.

Kdykoli třída (z OOP) definuje virtuální funkci (nebo metodu), kompilátor většinou přidá schovanou členskou proměnnou do třídy, která ukazuje na tabulku virtuálních metod. Tato TVM je v principu pole ukazatelů na virtuální funkce. +more Při běhu (při inicializaci run-time) budou tyto pointery ukazovat na správné funkce, protože při kompilaci není známo, zda má být virtuální funkce volána z předka nebo z potomka, jako při statické deklaraci.

Je několik různých způsobů, jak implementovat dynamický výběr. Tabulka virtuálních metod je populární řešení v C++ a příbuzných jazycích (např. D a C#).

5 min read
Share this post:
Like it 8

Leave a Comment

Please, enter your name.
Please, provide a valid email address.
Please, enter your comment.
Enjoy this post? Join Cesko.wiki
Don’t forget to share it
Top