מה ההבדל בין חברים פרטיים ומוגנים בכיתות C++

Mh Hhbdl Byn Hbrym Prtyym Wmwgnym Bkytwt C



C++ היא שפת תכנות מונחה עצמים (OOP) המספקת מנגנון להקיף נתונים ופונקציות לתוך ישות אחת הנקראת מחלקה. אחת התכונות החיוניות של המחלקה היא היכולת לציין את רמת הגישה לחבריה. בתכנות מונחה עצמים, מפרטי גישה משמשים לשליטה בנראות ובנגישות של השדות והשיטות של המחלקה. מוּגָן , פּוּמְבֵּי , ו פְּרָטִי רמות גישה הן שלושת הסוגים הבסיסיים של רמות גישה ב-C++.

בכתבה זו, נדון בהבדל בין השניים העיקריים מפרט גישה s, פְּרָטִי ו מוּגָן חברים בכיתה C++.

מפרט גישה פרטית

חברים פרטיים מוכרזים באמצעות מילת המפתח ' פְּרָטִי '. ה מפרט גישה פרטית מגביל את הגישה לחברי הכיתה רק לכיתה עצמה. קוד מחוץ לכיתה לא יכול לגשת או לשנות חבר פרטי. זה אומר שרק השיטות המוצהרות במחלקה יכולות לגשת ולפעול ב- חברים פרטיים , אפילו מחלקות נגזרות לא יכולות לגשת חברים פרטיים . שימוש נפוץ ב חברים פרטיים היא להבטיח את הפעולה הנכונה של מחלקה. חברים פרטיים משמשים כדי להכיל את נתוני המחלקה ולספק רמת הפשטה למשתמשי המחלקה.







#include
באמצעות מרחב שמות סטד ;

מעמד שחקן {

פְּרָטִי :
שם מחרוזת ;
int גיל ;

פּוּמְבֵּי :
בָּטֵל getPlayer ( )
{
cout << 'הכנס שם: ' ;
אֲכִילָה >> שֵׁם ;
cout << 'הזן גיל:' ;
אֲכִילָה >> גיל ;
}
בָּטֵל showPlayer ( )
{
cout << 'שם:' << שֵׁם << endl ;
cout << 'גיל: ' << גיל << endl ;
}
} ;

int רָאשִׁי ( )
{
שחקן pl ;
pl. getPlayer ( ) ;
pl. showPlayer ( ) ;

לַחֲזוֹר 0 ;
}

בקוד למעלה, אנו משתמשים בשיטות החברים הציבוריים getPlayer() ו showPlayer() כדי לגשת לשניים פְּרָטִי חברים שֵׁם ו גיל . ה getPlayer() הפונקציה מקבלת את הקלט מהמשתמשים ומציגה אותו על המסך באמצעות showPlayer() פוּנקצִיָה.



תְפוּקָה







מפרט גישה מוגנת

חברים מוגנים של מחלקה ניתן לגשת הן למחלקות הנגזרות והן לפונקציות החברים של המחלקה עצמה. חברים מוגנים משמשים כדי לספק רמת גישה למחלקות הנגזרות מבלי לחשוף את פרטי היישום לעולם החיצון. חברים מוגנים מוכרזים באמצעות מילת המפתח ' מוּגָן ' וה המעי הגס (:) אופי. חברים מוגנים לאפשר להרחיב ולשנות מחלקה, מבלי לפגוע בשלמותה. מחלקה נגזרת יכולה להשתמש חברים מוגנים כדי לחדד או להתאים אישית את ההתנהגות של מחלקה בסיסית.

הנה דוגמה לכיתה עם חברים מוגנים :



#include
שימוש במרחב שמות std;

שחקן בכיתה {
פְּרָטִי:
שם מחרוזת;
גיל אינט;

מוּגָן:
מטרות int;

פּוּמְבֵּי:
בטל getPlayer ( )
{
cout <> שֵׁם;
cout <> גיל;
}
void showPlayer ( )
{
cout << 'שם:' << שֵׁם << endl;
cout << 'גיל: ' << גיל << endl;
}
} ;

שחקן בכיתה 1: שחקן ציבורי {

פְּרָטִי:
ארץ מיתר;

פּוּמְבֵּי:
void set_goals ( int g )
{
מטרות = g;
}
void getPlayer1 ( )
{
getPlayer ( ) ;
cout <> מדינה;
}
void showPlayer1 ( )
{
cout << 'מטרות:' << מטרות << endl;
showPlayer ( ) ;
cout << 'מדינה: ' << מדינה << endl;
}
} ;

int main ( )
{
player1 pl;
pl.set_goals ( 101 ) ;
pl.getPlayer1 ( ) ;
pl.showPlayer1 ( ) ;

לַחֲזוֹר 0 ;
}

ה שחקן הכיתה כוללת שניים חברים פרטיים , שֵׁם ו גיל , אחד מוּגָן חבר, מטרות , ו פְּרָטִי חברים מנוצלים בתוך פּוּמְבֵּי פונקציות חבר, getPlayer() ו showPlayer() . יש שני כיתות, שחקן ו שחקן 1 , שתיהן מחלקות בסיס. אחד פְּרָטִי חבר, מדינה ,ושלושה פּוּמְבֵּי שיטות חבר מרכיבות את שחקן 1 מעמד. להציב מטרות() משמש לשינוי החבר המוגן מטרות' ערך. getPlayer1() מתקשר ל getPlayer() פונקציית חבר של שחקן כיתה תוך אחזור נוסף של הקלט עבור המדינה. בדומה לזה, showPlayer1() מתקשר ל showPlayer() פונקציית חבר ומדפיס את מטרות ו מדינה ערכים.

תְפוּקָה

ההבדל בין חברים פרטיים ומוגנים בכיתות C++

הנה כמה מההבדלים העיקריים ביניהם פְּרָטִי ו מוּגָן חברים בכיתות C++.

1: היקף ופונקציונליות

כאשר בוחנים את השימוש במפרטי גישה, חיוני לחשוב היטב על ה תְחוּם ו פונקציונליות של התוכנית. א מפרט גישה פרטית מספק את רמת האבטחה הגבוהה ביותר ומונע גישה לא מכוונת למשתנים ושיטות. מצד שני, א מפרט גישה מוגנת מציע מגוון רחב יותר של נגישות וגמישות, דבר חיוני כאשר מתכננים לרשת מחלקות נגזרות ממחלקה בסיסית.

2: רמת גישה

ההבדל העיקרי בין פְּרָטִי ו חברים מוגנים היא רמת הגישה שהם מספקים. מוּגָן חברים יכולים להיות נגישים הן על ידי המחלקות הנגזרות של הכיתה והן על ידי פונקציות החברים, אבל פְּרָטִי ניתן להשיג חברים רק על ידי פונקציות החברים של הכיתה.

3: Encapsulation של הכיתה

עוד הבדל מכריע בין פְּרָטִי ו מוּגָן החברים הוא תפקידם בשמירה על האנקפסולציה של הכיתה. כדי לבודד את הנתונים ולספק למשתמשי הכיתה רמה מסוימת של הפשטה, פְּרָטִי חברים מועסקים. מוּגָן חברים מועסקים כדי לנהל את מבנה הירושה ולספק גישה לחברי הכיתה הבסיסית לפי מחלקות נגזרות.

מחשבות אחרונות

פְּרָטִי ו חברים מוגנים הן שתי רמות הגישה החיוניות במחלקה C++. ה פְּרָטִי מפרט הגישה הופך את חברי הכיתה לבלתי נגישים לכל המשתמשים החיצוניים, והוא משמש לשמירת מידע פְּרָטִי בתוך הכיתה. לעומת זאת, א מוּגָן מפרט הגישה מאפשר גישה לחברי מחלקה רק על ידי מחלקות נגזרות, משמש לספק פונקציונליות של מחלקות בסיס ומאפשר שינוי מבלי לשנות את ההתנהגות של מחלקת הבסיס. רמת הגישה של חברי הכיתה ממלאת תפקיד מכריע בשמירה על האנקפסולציה של הכיתה ומתן רמת גישה למשתמשי הכיתה.