5.2.4. Dynamic Binding ו-Static Typing

Static typing מבטיח שהמתודה שאנחנו רוצים לקרוא לה אכן קיימת באובייקט שאליו אנחנו פונים.

Dynamic Binding דואג שבכל מקרה המתודה המתאימה לאובייקט תיקרא.

שילוב של static typing וגם dynamic binding נותן לנו כוח בשילוב עם בטיחות. רוב השפות הן כאלה: Eiffel, C++, Java, Turbo-Pascal ועוד.



מאת: ניצן

Borland style vptr

לפי מה שאני מכיר:
"חסרון בגישה זו: גם כאשר איננו משתמשים ב-dynamic binding – אנחנו משלמים במקום"
לא נכון , עבור מחלקה A שאין לה מתודות דינמיות לא יווצר כלל המצביע, ולמשל עבור מחלקה B שיורשת מA פשוט נוסיף בהתחלה את המצביע, ואחרי הבלוק של A את שאר האינפורמציה של B . וככה לא משלמים על מה שלא משתמשים ועקרונות C++ נשמרים.
מה שכן באמת הcasting קצת יותר מסובך....
שיתוף:
| עוד