c++ בנאים ומחלקה שמכילה מחלקה אחרת - תכנות - HWzone פורומים
עבור לתוכן
  • צור חשבון

c++ בנאים ומחלקה שמכילה מחלקה אחרת


א

Recommended Posts

נניח שאני יוצר מופע של המחלקה A, שמכילה (לא יורשת) את המחלקה B.

למשל כך:




class B
{

public:
B()
{
cout << "hello B" << endl;
}

};

Class A
{
public:
A()
{
cout << "hello A" << endl;
}
B test;
};

ביצירת מופע, איזה בנאי יופעל קודם? של A או של B?

חשבתי שקודם של A, כי הבנאי זה הדבר הראשון שמופעל ביצירת מופע, אבל מסתבר שדווקא הבנאי של B. למה זה?

קישור לתוכן
שתף באתרים אחרים

לפני שמבוצע הקוד של הבנאי, מאותחלים כל שדות המחלקה (בסדר בו הוגדרו במחלקה).

(אם לבנאי הייתה רשימת אתחול, אז השדות היו מאותחלים לפיה. זה מתקשר לכך שבטח שמעת שלא מומלץ לאתחל שדות בתוך הבנאי אלא ברשימת האתחול.)

קישור לתוכן
שתף באתרים אחרים

תודה, ברשותך שאלה נוספת (בלי קשר לשאלה הראשונה ולקוד שצירפתי)

נניח שמחלקה A יורשת מ-B ומ-C. איזה בנאי יופעל קודם ביצירת מופע של A, האם C או B?

קישור לתוכן
שתף באתרים אחרים

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

×
  • צור חדש...