כותב |
|
Nameless אחראי פורומים
הצטרף / הצטרפה: 08 March 2005 מדינה: Armenia
משתמש: מנותק/ת הודעות: 69
|
נשלח בתאריך: 02 May 2005 בשעה 17:20 | | IP רשוּם
|
|
|
|
כשאומרים ש:
"פונקציה אשר הגוף שלה מופיע בתוך הגדרת המחלקה תהיה באופן אוטומטי inline"
מתכוונים לזה:
class bla{
int show(int a, int b)
};
אז הפונקציה show היא ישר נחשבת כ inline וכל הגוף שלה מועתק לאיפה שהיא במחלקה (בלי לרשום את inline int show?
נגיד, זאת תהיה התוצאה:
class bla{
int show(int a, int b){
הגוף שהועתק לכאן
}
};
__________________ meow
|
חזרה לתחילת העמוד |
|
|
RPG2kiLL משתמש חבר
הצטרף / הצטרפה: 12 January 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 376
|
נשלח בתאריך: 02 May 2005 בשעה 18:45 | | IP רשוּם
|
|
|
|
לא..
הכוונה בפונקציה שאתה מממש בהגדרתה באופן מלא, בתוך קובץ ה H
היא תוגדר באופן אוטומטי כפונקציה INLINE, כלומר הקוד שלה יופיע במקום הקריאה לפונקציה בכל מקום שבו משתמשים בה
מה שעומד מאחורי זה , זה כמובן שיקול היעילות.. כאשר המחשבה הראשית היא שבקבצי הH אתה תגדיר רק פונציות פשוטות, טרוואליות וקטנות.
|
חזרה לתחילת העמוד |
|
|
cp77fk4r מנהל פורומים
מנהל פורום אבטחת מידע
הצטרף / הצטרפה: 09 April 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 501
|
נשלח בתאריך: 02 May 2005 בשעה 20:07 | | IP רשוּם
|
|
|
|
מה שיעיל פה, זה שזה חוסך את ה"זמן תקורה" {זה הפירוש הכי טוב שמצאתי ><'}
(הזמן שלוקח למעבד לטעון את הערכים לפונקציה).
__________________ [Th3rE R mAnY wAyZ 2 r3aD oN3 EmPty p4gE]
|
חזרה לתחילת העמוד |
|
|
ניר מנהל האתר
הצטרף / הצטרפה: 12 January 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 3296
|
נשלח בתאריך: 02 May 2005 בשעה 21:28 | | IP רשוּם
|
|
|
|
נכון - והוא משמעותי ביותר - אותה תוכנית ב-C++ עם או בלי inline, מדובר
על הבדלים ממוצעים שהתוכנית עם ה-inline מהירה פי 25 מהתוכנית בלי ה-inline
|
חזרה לתחילת העמוד |
|
|
cp77fk4r מנהל פורומים
מנהל פורום אבטחת מידע
הצטרף / הצטרפה: 09 April 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 501
|
נשלח בתאריך: 03 May 2005 בשעה 14:32 | | IP רשוּם
|
|
|
|
אני מניח שכשמדובר בקוד בעל 100 שורות זה לא ענייני כל כך, אבל כשמדובר על פרוייקטים בעלי 500,000 שורות, כשכל שיגרה ניקראת איזה 100,000 פעמים זה כן משנה, והרבה.
__________________ [Th3rE R mAnY wAyZ 2 r3aD oN3 EmPty p4gE]
|
חזרה לתחילת העמוד |
|
|
RPG2kiLL משתמש חבר
הצטרף / הצטרפה: 12 January 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 376
|
נשלח בתאריך: 03 May 2005 בשעה 20:05 | | IP רשוּם
|
|
|
|
מי אמר VAX?
, טוב, כמעט...
|
חזרה לתחילת העמוד |
|
|
ניר מנהל האתר
הצטרף / הצטרפה: 12 January 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 3296
|
נשלח בתאריך: 03 May 2005 בשעה 22:51 | | IP רשוּם
|
|
|
|
VAX הגיע ל-70000 שורות, אם אני לא טועה, וכתבנו אותו ב-C#, שם אין inline
|
חזרה לתחילת העמוד |
|
|
RPG2kiLL משתמש חבר
הצטרף / הצטרפה: 12 January 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 376
|
נשלח בתאריך: 03 May 2005 בשעה 23:08 | | IP רשוּם
|
|
|
|
והסיבה שהורידו את INLINE ב C# זה מכיוון שהורידו את התקורה של קריאה לפונקציה באופן משמעותי?
אחרת, למה? זה הרי קל למימוש, לתמוך ב INLINE (לא שזאת הבעייה), זה לא קוד לא בטוח, ואין בעייה בזרימה/באגים אפשריים.
|
חזרה לתחילת העמוד |
|
|
cp77fk4r מנהל פורומים
מנהל פורום אבטחת מידע
הצטרף / הצטרפה: 09 April 2005 מדינה: Israel
משתמש: מנותק/ת הודעות: 501
|
נשלח בתאריך: 04 May 2005 בשעה 01:53 | | IP רשוּם
|
|
|
|
אתם סוטים ><'.
__________________ [Th3rE R mAnY wAyZ 2 r3aD oN3 EmPty p4gE]
|
חזרה לתחילת העמוד |
|
|