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