מדריך C# – עבודה עם enum
בחלק זה נלמד כיצד ליצור טיפוסים חדשים מסוג enum.
מהו טיפוס מסוג enum?
טיפוס מסוג enum הוא טיפוס שיכול לקבל ערכים רק מתוך קבוצה קטנה של ערכים.
לדוגמא, ניתן להגדיר טיפוס מסוג enum בשם Month שיוכל לקבל רק אחד מהערכים הבאים:
כיצד עובדים עם enum?
ראשית יש להגדיר את הטיפוס החדש, משתמשים במילה enum בשביל לציין שזהו טיפוס מסוג enum, לאחר מכן נותנים את שם הטיפוס ולאחריו את רשימת הערכים מופרדת בפסיקים.
לדוגמא, הקוד הבא מגדיר enum בשם Month המכיל את ערכי החודשים השונים:
enum Month
{
January,
February,
March,
April,
May,
June,
July,
August,
September,
October,
November,
December
}
נציין שהגדרת הטיפוס צריכה להיות מחוץ לפונקציית ה Main ואפילו מחוץ למחלקה Program שכן אנחנו מגדירים טיפוס חדש.
כעת נוכל להשתמש בטיפוס החדש בתוכנית הראשית:
static void Main(string[] args)
{
Month myMonth = Month.December;
Console.WriteLine(myMonth);
}
מתי נשתמש בenum?
השימוש בטיפוס מסוג enum עוזר לקריאות של התוכנית ומונע שגיאות.
לדוגמא, התבוננו בקטע הקוד הבא:
if ((documentState == 1) && (userSelection == 2))
{
SaveDocument();
}
else if ((documentState == 1) && (userSelection == 1))
{
DiscardDocument();
}
לא ברור מה הייתה כוונת המשורר, מה מייצגים המספרים 1,2 והאם יש להם משמעות יחידה.
לעומת זאת, אותו הקטע תוך שימוש בenum יראה בצורה הרבה יותר ברורה:
if ((documentState == DocumentState.NotSaved) &&
(userSelection == DocumentOperation.Save))
{
SaveDocument();
}
else if ((documentState == DocumentState.NotSaved) &&
(userSelection == DocumentOperation.Discard))
{
DiscardDocument();
}
כאשר במקרה זה נגדיר שני טיפוסים מסוג enum באופן הבא:
enum DocumentOperation
{
Load,
Save,
Discard
}
enum DocumentState
{
Saved,
NotSaved
}
תגובות בפייסבוק