C++/מחלקות: הבדלים בין גרסאות בדף

תוכן שנמחק תוכן שנוסף
Ybungalobill (שיחה | תרומות)
מ קטגוריה
מ ←‏הגדרת גופי פונקציות המחלקה: שינוי קטן לפתירת באג דו-כיווניות. ומחיקת direction:ltr כיוון שאינו נחוץ כשכותבים source
שורה 45:
עד כה הצהרנו את כותרות הפונקציות, את ממשק המחלקה. עלינו לממש אותו, להגדיר את גוף כל פונקציה. את פונקציות המחלקה מגדירים בדומה לפונקציות רגילות. ניתן להגדיר אותן בשני מקומות:
 
* '''בתוך בלוק המחלקה.''' פונקציות אלה יהיו inline. לדוגמה, נגדיר את הפונקציה ()year:
<div style="direction: ltr;"><source lang="cpp">
class Date
{
שורה 59:
}
};
</source></div>
 
* הגדרה '''מחוץ לבלוק המחלקה.''' בדרך זו נגדיר את שאר הפונקציות. הסיבה לכך היא שנרצה להגדיר אותן בד"כ בקובץ cpp ואילו הגדרת המחלקה עצמה תמצא בקובץ h. כדי לציין שהפונקציה שאנו מגדירים שייכת למחלקה מסוימת, נוסיף את שם המחלקה וארבע נקודות (::) לפני שמה, בזהה למרחבי שם. כדוגמה נגדיר את הפעולה ()init:
<div style="direction: ltr;"><source lang="cpp">
class Date
{
שורה 74:
y = yy;
}
</source></div>
 
''הערה:'' בין אם גוף פונקצית המחלקה מוגדר בתוך או מחוץ למחלקה יש לה גישה ל'''כל''' משתני המחלקה, פונקציות המחלקה וטיפוסים המוגדרים בתוך המחלקה.