7. מקורות
מקורות באנגלית:
- Abadi, M. &
Cardelli, L.(1996), "A Theory of Objects"
- Dr. Yossi Gil – "Object
Oriented Programming – Lectures Notes"
- Luca Cardelli and Peter
Wegner (1985), "On Understanding Types, Data Abstraction, and Polymorphism"
- Scott Danforth and Chris
Tomlinson (1988), "Type theories and object-oriented programming"
- Uppsala University (1998), "Software Design"
- Uppsala University (1998), "Polymorphism"
- William R. Cook (1994),
"Inheritance is not subtyping"
- Wm. Paul Rogers (2004),
"Reveal the magic behind subtype polymorphism"
- Zhanshan Gao (1999),
"Inheritance in Object-Oriented Theories"
מקורות בעברית:
- אדר נ. (2004), "שפות תיכנות"
- כהן א. (2004), "סיכומי
הרצאות בתכנות מונחה עצמים של ד"ר יוסי גיל"
- אדר נ. (2005), "סיכומי
הרצאות בתכנות מונחה עצמים של ד"ר יחיאל קימחי"
|
|
Borland style vptr
לפי מה שאני מכיר:"חסרון בגישה זו: גם כאשר איננו משתמשים ב-dynamic binding – אנחנו משלמים במקום"
לא נכון , עבור מחלקה A שאין לה מתודות דינמיות לא יווצר כלל המצביע, ולמשל עבור מחלקה B שיורשת מA פשוט נוסיף בהתחלה את המצביע, ואחרי הבלוק של A את שאר האינפורמציה של B . וככה לא משלמים על מה שלא משתמשים ועקרונות C++ נשמרים.
מה שכן באמת הcasting קצת יותר מסובך....