הורשה וירטואלית
נגיד ויש לנו מחלקת Animal ויש בה פונקצייה גישה קבועה למשתנה איבר שמייצג גיל חייה. מתוך Animal אני גוזר שני מחלקות:Horse,Bird. מתוך Horse ו Bird אני גוזר בצורה מרובה (משתיהן),מחלקת Pegasus(זה סוג של סוס מעופף,העדפתי שלא לפעפע כלפי מעלה ממשק וגם לא להשתמש בהמרה עם dynamic_cast). כשאני יוצר אובייקט Pegasus נקרא הבנאי ומאתחל את החייה וגם את שני מחלקות הבסיס והבסיס של הבסיס(Animal). אני משתמש בהורשה וירטואלית לבירד והורס כדי שלא יווצרו "שני עותקים". מכיוון שאני רוצה לגשת לפונקציית קבלת הגיל מאנימל ,אז יהיו שני גירסאות אחת של הורס ואחת של בירד והשאלה: האם כל נגזרת מהמחלקות הוירטואליות(Bird,orse)צריכה לאתחל גם את הבנאי של Animal ?ועד איזו רמה צריך לאתחל את הבנאי של אנימל? תודה ויום נעים
נגיד ויש לנו מחלקת Animal ויש בה פונקצייה גישה קבועה למשתנה איבר שמייצג גיל חייה. מתוך Animal אני גוזר שני מחלקות:Horse,Bird. מתוך Horse ו Bird אני גוזר בצורה מרובה (משתיהן),מחלקת Pegasus(זה סוג של סוס מעופף,העדפתי שלא לפעפע כלפי מעלה ממשק וגם לא להשתמש בהמרה עם dynamic_cast). כשאני יוצר אובייקט Pegasus נקרא הבנאי ומאתחל את החייה וגם את שני מחלקות הבסיס והבסיס של הבסיס(Animal). אני משתמש בהורשה וירטואלית לבירד והורס כדי שלא יווצרו "שני עותקים". מכיוון שאני רוצה לגשת לפונקציית קבלת הגיל מאנימל ,אז יהיו שני גירסאות אחת של הורס ואחת של בירד והשאלה: האם כל נגזרת מהמחלקות הוירטואליות(Bird,orse)צריכה לאתחל גם את הבנאי של Animal ?ועד איזו רמה צריך לאתחל את הבנאי של אנימל? תודה ויום נעים