בכל שאלות הCASTING מה הכוונה שואמרים a=b

מנהלים: TA_nimrod, TA_Igor, TA_Adi

שלח תגובה
talshum
הודעות: 25
הצטרף: 20:54 28/10/2009

בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי talshum » 11:28 23/01/2010

מה הכוונה ב-
a=b ??

שמכניסים ל-a את הכתובת של b נכון?

ומתי זה יהיה שגיאת קומפילציה? ש a יורשת מ-b או הפוך?
----------------------------------------------------------
ומה הכונה של
a=(a)b זה יפול בזמן ריצה נכון? אם במחלקות b יורשת מ-a

תודה

בר כהן
הודעות: 146
הצטרף: 18:24 22/10/2009

Re: בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי בר כהן » 11:46 23/01/2010

כן, כשרשום a=b אז אתה עושה השמה של המצביע שהיה ב-b לתוך a ועכשיו שניהם יצביעו על אותו אוביקט.
תהיה שגיאת קומפילציה כשתנסה לעשות לשים מצביע של אבא בתוך בן, לדוגמא a=object לא יעבוד בלי קאסטינג
אבל תמיד מותר לרשום object=a.

*תיקון:
a=(A)b יעבוד כרגיל, ו-b=(B)a יעבור קומפילציה וייתן שגיאת זמן ריצה (אם b יורשת מA)
נערך לאחרונה על ידי בר כהן ב 13:16 23/01/2010, נערך פעם 1 בסך הכל.

shanich
הודעות: 24
הצטרף: 21:57 28/10/2009

Re: בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי shanich » 12:59 23/01/2010

למה שזה ייפול בזמן ריצה?
מותר לעשות קאסטינג של אבא לבן

בר כהן
הודעות: 146
הצטרף: 18:24 22/10/2009

Re: בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי בר כהן » 13:12 23/01/2010

shanich כתב:למה שזה ייפול בזמן ריצה?
מותר לעשות קאסטינג של אבא לבן
צודקת לגמרי, התבלבלתי, התכוונתי הפוך כאשר יש b=(B)a

talshum
הודעות: 25
הצטרף: 20:54 28/10/2009

Re: בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי talshum » 13:38 23/01/2010

קצת מבובלבל עם העריכות ותיקונים תגידו בבקשה אם זה נכון:
במידה וB יורשת מ-A

אז
1 -a=(a)b יעבוד רגיל
2- b=(b)a זמן ריצה
3- a=b יעבוד רגיל
4- b=a הקומפילציה נכון?

בר כהן
הודעות: 146
הצטרף: 18:24 22/10/2009

Re: בכל שאלות הCASTING מה הכוונה שואמרים a=b

שליחה על ידי בר כהן » 13:48 23/01/2010

talshum כתב:קצת מבובלבל עם העריכות ותיקונים תגידו בבקשה אם זה נכון:
במידה וB יורשת מ-A

אז
1 -a=(a)b יעבוד רגיל
2- b=(b)a זמן ריצה
3- a=b יעבוד רגיל
4- b=a הקומפילציה נכון?
כן :)

שלח תגובה

חזור אל “- מבוא למדעי המחשב 2010”