2.2.1. פונקציות בעלות משתנים סטאטייםפונקציה בעלת משתנה סטאטי הינה בעלת התנהגות מסויימת (פעולת הפונקציה). אנחנו מסוגלים לזהות את הפונקציה לפי שמה, ובכך להבדילה מאובייקטים אחרים. כמו כן, המשתנה הסטאטי שבה משמש לשמירת המצב שלה. לפיכך, ניתן להתייחס לפונקציה סטאטית כאל אובייקט. דוגמא לפונקציה עם משתנה סטאטי: long ID_Generator() { static long iNextID = 0; return ++iNextID; } |
תוכן העניינים:
קישורים רלוונטיים:שיתוף: |
Borland style vptr
לפי מה שאני מכיר:"חסרון בגישה זו: גם כאשר איננו משתמשים ב-dynamic binding – אנחנו משלמים במקום"
לא נכון , עבור מחלקה A שאין לה מתודות דינמיות לא יווצר כלל המצביע, ולמשל עבור מחלקה B שיורשת מA פשוט נוסיף בהתחלה את המצביע, ואחרי הבלוק של A את שאר האינפורמציה של B . וככה לא משלמים על מה שלא משתמשים ועקרונות C++ נשמרים.
מה שכן באמת הcasting קצת יותר מסובך....