נשלח בתאריך: 20 August 2006 בשעה 10:08 | | IP רשוּם
|
|
|
|
ראשית. המלצה שלי:
אם אתה עובד עם מסד נתונים שכל מחלקה מכילה איזה שהוא מידע מסוים אז הדרך הטובה ביותר היא הדרך הבאה (בהנחה שלא מדובר פה בשרת נתונים נפרד):
ליצור מחלקה הנקראת )DataManager) שתכיל רשימה מקושרת של כל המחלקות (אפשר בעזרת הרשימה המקושרת המוגדרת ב- stl מאוד פשוט ונוח).
ואז מה שאתה צריך לבסוף זה לקרוא לפונקציה write של אותה רשימה מקושרת (ואז תבנה פונקציה write בכל מחלקה ותעבור אולי בלולאה דרך איטרטור).
לגבי הבעיה השניה. פיתרון ראשון זה להגדיר בתוך המחלקה לעיל שדה אורך (שמוגדר כבר בתוך stl::list) ואז להדפיס את השדה הזה בהתחלה ולעבור בלולאה לפיו. פיתרון שני שעדיף שיעשה ביחד עם הראשון זה בעזרת תו הסיום- EnfOfFile (EOF). מה גם שהפונקציה read בתוך stl::ofstream מחזירה את מספר הבתים שנקראו, אפשר לבדוק מתי ערך זה קטן או שווה ל- 0.
בהצלחה!
|