יש מבחן!!! צריך עזרה...

eric_adler

New member
יש מבחן!!! צריך עזרה...

אהלן לכל המתכנתים/תוכניתנים הנחמדים... ביום שישי הקרוב יש לי מבחן מאוד מאוד חשוב ב C++ עכשיו C++ אני יודע..בגדול. הבעייה היא כל הדברים הקטנים והמרגיזים שיש בשפה הזאת כמו מתי אפשר לשים מה ומתי אפשר לאתחל אותם ואיפה...או מה יותר מהיר ממה וכדו` עכשיו השאלה היא האם יש למישהו נחמד מכם איזשהוא חומר מסוכם על כאלו דברים או איפה אפשר למצוא כזה דבר כי כאלה דברים לומדים רק עם הניסיון בדר``כ וע``י ניסוי ותהייה אבל אין לי כ``כ הרבה זמן לזה אז אשמח לקבל עזרה!! תודה רבה לכם מראש...
 

WarLord

New member
אני לא בדיוק

הבנתי מה אתה מחפש אבל צירפתי לינק לאתר של הקורס בטכניון שמלמד (בין היתר) ++C בהצלחה במבחן.
 

ihovav

New member
אמממממ.......

אולי אני יכול לעזור בשאלות ספציפיות אבל בכל מקרה - תשתדל לעבור על כל נושא האופטימיזציה - איפה שאני למדתי שואלים על זה המון - איזה CTOR פועל ולה ... וכ``ו... אם אתה לא מבין על מה אני מדבר - תפנה ותקבל הסבר מפורט
 

WarLord

New member
אופטימיזציה

אופטימיזציה זה התפקיד של הקומפיילר - לא ? בונים והורסים ואופרטור ההשמה זה התפקיד של התכנת, מה הקשר לאופטימיזציה ?
 

eric_adler

New member
HELP ME PLEASE

לשני החבר`ה הנחמדים שמנסים לעזור לי... בבקשה רק אל תתוכחו בינכם כי זה לא יועיל... אופטימיזציה , ואופרטור השמה או כל אופרטור אחר..זה לא הבעיה... שוב.. הבעייה היא בדברים הקטנים והמבלבלים והמציקים שיש בשפה.. כמו שאם נציין במישוש של מטודה סטטית את המילה static כמו בהצהרה נקבל error... זאתי סתם דוגמא שניתקלתי בה.. אני מקווה שהבנתם את הרעיון אז בבקשה כל מי שיש לו איזשהו משהו מהניסיון שלו או סתם ידע כללי כמו ש data member סטטי מאתחלים מחוץ ל class או המימושים שלו.. או חומר כתוב איפשהו אנא... עיזרו לי! תודה. אני מאוד מאוד יעריך את זה!!!
 

WarLord

New member
טיפ כבקשתך

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

ihovav

New member
תוספות...

1-> אמנם כאשר מגדירים CTOR לCLASS - הדיפולטי נעלם - אבל חשוב לציין שה CCTOR - נשאר CTOR - כינוי לקונסטרקטור CCTOR - כינוי לקופי קונסטרקטור 2 -> חשוב לציין שגישה למשתנה או פונקציה סטטית - אפשרי גם אם אין ``אינסטנס`` מאותו ה CLASS - אבל הגישה מפונקציה סטטית מוגבלת לפונקציות סטטיות או משתנים סטטיים בלבד (כדי למנוע גישה של פונקציה סטטית שתופעל לפני קיום האובייקט - לאובייקט שאינו קיים) 3 -> הCCTOR הדיפולטי שמסופק אוטומטית לכל CLASS עובד בשיטה של ``העתקת ביטים`` - כלומר - מעתיק את ערכי הביטים מאובייקט אחד לשני זה יוצר בעיה כאשר יש פוינטרים ואז יש בעיה ב DTOR(דיסטרקטור) - מי משחרר ומתבצע DELETE על אותה כתובת פעמיים לכן צריך לכתוב אחד חדש לשאלות נוספות - אני פה (-:
 

ihovav

New member
יש קשר...

בקומפיילרים החדשים (ויזואל C וכ``ו) הקומפיילר עובר על התכנית ועושה אופטימיזציה דוגמא : אם אתה עושה דבר כזה : int a = 5;(בצורה מופשטת לחלוטין - כאילו INT הוא CLASS) בתיאוריה - אתה מפעיל CTOR ו CCTOR - שתי פעולות אבל בקומפיילרים החדשים - הקומפיילר הופך את המשפט כאילו נכתב : ;(5)INT A ההבדל - השמה- מול אתחול תתעמק בנושא הזה - זה מאוד מעניין ומחדד המון
 
למעלה