מבנה Typedef ב-C++

Mbnh Typedef B C



שפת התכנות C++ מציעה מילת מפתח מסוג 'typedef' המאפשרת למפתחים ליצור כינויים של סוגי נתונים קיימים שיכולים להיות סוגים פרימיטיביים בסיסיים כמו 'int', 'long', או סוגי נתונים של מבנה מוגדרים על ידי המשתמש. מילת המפתח 'typedef' אינה יוצרת סוג חדש. במקום זאת, הוא יוצר כינוי (או כינוי) מסוג קיים. השימוש ב-'typedef' יכול להפוך את הקוד לקריאה יותר ולחסוך את האנרגיה והזמן הדרושים כדי להקליד שמות סוגים ארוכים שוב ושוב. עם זאת, אם משתמשים בו יותר מדי בתוכנית, זה עלול לגרום לקוד לבלבל, במיוחד בפרויקטים גדולים. במאמר זה, נחקור כיצד להגדיר מבנה באמצעות 'typedef', כיצד הוא עוזר לצמצם את שורת הקוד, מהו השימוש ב-'typedef' ועוד בעזרת דוגמאות המחשה.

הבנת מבנה Typedef ב-C++

ב-C++, 'typedef' היא מילת מפתח המספקת שמות חדשים של סוגי נתונים מובנים קיימים, מצביעים, מבנים וסוגי נתונים המוגדרים על ידי המשתמש הפועלים ככינוי בכל התוכנית. במילים פשוטות, הוא נותן שמות תיאוריים לסוגי הנתונים המובנים או המוגדרים על ידי המשתמש שיכולים להיות מובנים מאליהם. זה גם עוזר לצמצם את שורות הקוד ולפשט את סוגי הנתונים המסובכים. עם זאת, כפי שהוזכר קודם לכן, שימוש רב מדי ב-'typedef' אינו מומלץ מכיוון שהוא עלול להוביל לבלבול.

ה-struct היא מילת מפתח נוספת המשמשת להגדרה ולאתחול מבנה. המבנה ב-C++ הוא הצהרת סוג נתונים מורכבת המאפשרת למפתחים לקבץ סוגי נתונים או משתנים שונים במקום אחד.







ב-C++, 'struct' ו-'typedef struct' זהים. אין הבדל מעשי בין 'מבנה typedef' ל-'struct' מכיוון שהם עובדים אותו הדבר. בכל פעם שמחלקה, enum, איחוד או מבנה מוכרזים או מוגדרים ב-C++, אין צורך להגדיר אותם באופן מרומז כ'typedef' מכיוון שהם, כברירת מחדל, 'typedef'.



תחביר של מבנה Typedef ב-C++

התחביר של המבנה 'typedef' זהה למבנה ללא 'typedef'. זה רק צריך הגדרה מפורשת של 'typedef' עם מילת המפתח 'struct'. ראה את התחביר המלא בהמשך:



typedef struct {
< סוג מידע > < משתנה1 > ;
< סוג מידע > < משתנה2 > ;
< סוג מידע > < משתנה3 > ;
} < struct_name > ;

המבנה מוגדר כעת על ידי שימוש פשוט ב-. אנו יכולים להגדיר מספר משתנים מסוג מבנה זה. ראה את ההגדרה הבאה:





< struct_name > משתנה4, משתנה5, משתנה6 ;

כעת, הבה נחקור כמה דוגמאות להבנה ברורה וטובה יותר של מבנה 'typedef' ב-C++.

דוגמה 1:

בדוגמה הראשונה של המבנה 'typedef' ב-C++, אנו לוקחים תוכנית פשוטה כדי להסביר כיצד ניתן להגדיר אותה ולהשתמש בה בפרויקטים של C++. ראה את הקוד הבא ואז נעבור להסבר:



#include
באמצעות מרחב שמות סטד ;
struct נקודה {
int 1 בדצמבר ;
int דצמבר 2 ; } ;
int רָאשִׁי ( ) {
struct עשרוני ד ;
ד. 1 בדצמבר = 10 ;
ד. דצמבר 2 = 23 ;
cout << ד. 1 בדצמבר << endl ;
cout << ד. דצמבר 2 << endl ;
לַחֲזוֹר 0 ; }

בקוד C++ זה, אנו מגדירים מבנה עשרוני ומדגים את השימוש בו בתוך הפונקציה הראשית. בואו נסתכל על כל שורת קוד.

התוכנית מתחילה עם הכללת קובץ הכותרת הדרוש כמו '#include ' ושימוש במרחב השמות 'std' לפעולות קלט/פלט והכנסת מרחב השמות 'std' לטווח. לאחר מכן, מוגדר מבנה בשם 'עשרוני'. למבנה שני איברים: 'dec1' ו-'dec2', שניהם מסוג 'int'.

בפונקציה הראשית נוצר מופע של המבנה העשרוני. זה נעשה באמצעות 'd;' הכרזה עשרונית. למבנה יש שני איברים, אז אנחנו ניגשים לשניהם באמצעות המופע 'd'. הערכים של 'dec1' ו-'dec2' מוקצים לאחר מכן עם 10 ו-23, בהתאמה, באמצעות ההגדרה 'd.dec1' ו-'d.dec2'. לבסוף, הערכים של 'dec1' ו-'dec2' מודפסים למסוף באמצעות 'cout'. התוכנית נותנת את התפוקות הבאות:

תמונת הפלט הנתונה מראה כיצד מבנה 'typedef' פשוט בשם 'עשרוני' משמש לאחסון ולטפל בשני מספרים עשרוניים בתוך הפונקציה הראשית. מבנה 'typedef' מאפשר ארגון וניהול טובים יותר של נתונים קשורים בתוכנית C++.

דוגמה 2:

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

#include
באמצעות מרחב שמות סטד ;
typedef struct מילון {
int תְעוּדַת זֶהוּת ;
שם מחרוזת ;
ארוך rollnum ;
לְהַשְׁחִיר שם הכיתה ;
} כתיב ;
int רָאשִׁי ( )
{
להכתיב נתונים ;
נתונים. תְעוּדַת זֶהוּת = עשרים ;
נתונים. שֵׁם = 'קלסום' ;
נתונים. rollnum = 123456789 ;
נתונים. שם הכיתה = 'ד' ;
cout << 'הזיהוי של המועמד הוא = ' << נתונים. תְעוּדַת זֶהוּת << endl ;
cout << 'שם המועמד הוא = ' << נתונים. שֵׁם << endl ;
cout << 'המספר של המועמד הוא = ' << נתונים. rollnum << endl ;
cout << 'שם הכיתה של המועמד הוא = ' << נתונים. שם הכיתה << endl ;
לַחֲזוֹר 0 ;
}

כמו הדוגמה הקודמת, תוכנית זו גם התחילה את קובץ הכותרת הדרוש כמו '#include ' ושימוש במרחב השמות 'std' לביצוע פעולות הקלט/פלט הבסיסיות. לאחר מכן, מוגדר מבנה מילון עם ארבעה איברים: id, name, rollnum ו-classname. מילת המפתח 'typedef' יוצרת כינוי 'dict' למבנה זה. כינוי זה מאפשר להתייחס למבנה פשוט כ'dict' במקום מילון ה-struct.

כעת, בפונקציה הראשית, אנו מגדירים תחילה מופע של מילון המבנה בשם 'dict' כנתון הפועל ככינוי של 'dict'. הערכים מוקצים לכל חבר במבנה באמצעות ההצהרות הבאות:

נתונים. תְעוּדַת זֶהוּת = עשרים ;
נתונים. שֵׁם = 'קלסום' ;
נתונים. rollnum = 123456789 ;
נתונים. שם הכיתה = 'ד' ;

כפי שניתן לראות, ערכים אלה הם מסוגים שונים - int, string, long ו-char. באמצעות הצהרת 'cout', אנו מדפיסים את כל הערכים המוגדרים על המסוף. תן לנו לראות את הפלט של התוכנית בתמונת המצב הבאה:

צילום המסך של הפלט מציג בבירור את השימוש ב-'typedef' עם המבנה המכיל מספר סוגי נתונים כדי ליצור כינוי למבנה. הוא מספק דרך תמציתית, קריאה ופשוטה יותר לעבוד עם המבנים בתוכנית C++ השלמה.

סיכום

לסיכום המבנה 'typedef' ב-C++, 'typedef' היא מילת מפתח המשמשת ב-C++ ליצירת כינויים של סוגי נתונים פרימיטיביים, מובנים או מוגדרים על ידי משתמש. בשילוב עם מילת המפתח 'struct', 'typedef' הוא כלי רב עוצמה לשיפור התמציתיות והבהירות של הקוד. ההגדרה 'typedef' בדרך כלל עוזרת לצמצם את שורות הקוד ואזורי הזיכרון. עם זאת, שימוש רב מדי ב-'typedef' אינו מומלץ בשום תוכנית, לא קצרה ולא ארוכה, ופרויקטים מסובכים מכיוון שהוא עלול ליצור עמימות. במאמר זה, חקרנו את מבנה 'typedef' בעזרת דוגמאות פשוטות להבנת העבודה, היישום והשימוש של 'typedef' בתוכניות C++.