עבור לתוכן

היי מה המצב שאלה C++

Featured Replies

פורסם

מה ההבדל בין הצהרה על מחלקה B לפני A בצורה זו

class B;

class A

{

B* pB;

}

לאומת אינקלוד של קובץ המחלקה לפני A

,USV

פורסם

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

אם היית שם INCLUDE לקובץ של המחלקה(B.h), היית צריך להגדיר את כל המחלקה B.

בדרך כלל משתמשים בשיטה הזו ל- 2 דברים:

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

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

פורסם
  • מחבר

תודה !!!

ארכיון

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

דיונים חדשים