עבור לתוכן

Generic ADT בשפת C

Featured Replies

פורסם

אשמח לקבל מידע כללי על הנושא

מה מבדיל אותו מ ADT רגיל?

פורסם

בעיקרון כשאומרים על משהו שהוא גנרי (Generic) הכוונה היא שהוא יכול להתאים להרבה טיפוסי מידע שונים. לדוגמה, אם נגדיר רשימה מקושרת שיכולה להכיל שלמים בלבד (כלומר טיפוס ה-data שלה הוא int) אז היא "סתם" ADT, אבל לעומת זאת רשימה מקושרת שיכולה להחזיק סוגים שונים של טיפוסים (מחרוזות, מספרים, או כל struct שנרצה) אז נוכל לקרוא לה גנרית.

C היא שפה שבה לא הכי נוח להגדיר מבנים ופונקציות גנריים - ב-++C ובשפות מודרניות יותר (כגון #C וג'אווה) יש תמיכה הרבה יותר טובה בזה.

מחיפוש קצרצר בגוגל מצאתי דווקא מצגת שמציגה לא רע את ההבדלים:

www.cs.technion.ac.il/~litalma/additional_material/tutorial5.ppt

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

אם זה עדיין לא ברור אז אתה צריך לפרט קצת יותר את השאלה שלך.

ארכיון

דיון זה הועבר לארכיון ולא ניתן להוסיף בו תגובות חדשות.

דיונים חדשים