منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : التركيب enum
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته
ماذا نستفيد من التركيب enum ومتى نستخدمه وارجو إعطاء مثال بسيط عنه
وشكرا لكم
Enum

هناك فائدة رئيسية منه وهناك فائدة اخرى تقنية اغلبنا لا يعرفها ،

الفائدة الرئيسية من الEnum ، هي التعامل مع الارقام كأسماء دلالية .



مثال :- شهر 12 يسمى بالانجلزي December

لو افترضنا انك صممت دالة تريد بارميتار بعبر عن الشهر ، لشخص لايعرف ماهو الEnum سيصممها بهذه الطريقة :-

PHP كود :
Private Sub Month(mnth As String)
    If 
mnth "january" Then
    End 
If
    If 
mnth "october" Then
    End 
If
    If 
mnth "novmber" Then
    End 
If
End Sub 


هذه الطريقة ابدا غير فعالة في البرمجة ، فعند الاستدعاء :-

PHP كود :
Month("janury")
Month("OCTBR"


بالطبع لن يظهر لك المترجم خطأ ، ولكن الدالة month لن تقوم بعمل المطلوب منها في حالة الكود اعلاه لانك ارسلت string خاطئ .


من هنا ظهر مبدأ الEnum ، كل ماعلينا هو وضع اسماء الشهور في Enum
PHP كود :
Enum Months
    December
    October
    Novmber
End Enum 

الان نغير اكواد الدالة قليلا لتصبح كالتالي :-
PHP كود :
Private Sub Month(mnth As Months)
    If 
mnth Months.December Then
    End 
If
    If 
mnth Months.Novmber Then
    End 
If
    If 
mnth Months.October Then
    End 
If
End Sub   


والان عند الاستدعاء :-

PHP كود :
Month(Months.December);
Month(Months.Novmber); 


كما تلاحظ باستعمال الenum ستكون متاكد 100% من البارميتار انه صحيح
وذلك كما ترى افضل من جعل البارميتار ك string وبالتالي قد تنسى كتابة حرف او تجعل الحروف كابتال وذلك سيأثر بالطبع على الدالة ولن تقوم بعملها

ولكن Enum لايمكنك ان تخطأ في الspilling او تجعل الحروف كابتل لان المترجم سيظهر خطأ .

جرب بتفسك وستلاحظ الفرق