1 مرفق
موضوع تعليمي : شرح كيفية إستخدام بيانات من نوع enum
أحد أنواع البيانات المعرفة Data Types المضافة إلى لغة MQL4 بعد التحديث الجديد للغه وفي رأيي لها أهمية كبيره جدا عند إستخدامها
وهي تأخذ أرقام صحيحه integer فقط
سابقا عندما كنا نريد تعريف متغير خارجي لتحديد نوع الموفينج أفريج ( إكسبونشل - سيمبل - سموثد .... ) كنا نعرفه كمتغير صحيح من نوع int
مثل
كود PHP:
input int Moving_Type=0;
وعند تحديد إعدادات الإكسبرت نستخدم الأرقام 0 - 1 - 2 لتحديد نوع الموفينج
لكن مع هذا النوع المضاف من البيانات يمكن تعريف المتغير الخارجي مثل
كود PHP:
input ENUM_MA_METHOD Moving_Type=0;
وسوف تظهر كقائمة منسدله بها جميع قيم الموفينج أفريج
الملف المرفق 404973
السؤال الآن : هل يمكن تعريف متغير من نوع enum غير المعرفه أساسا في اللغه ؟
نعم يمكن ذلك
مثلا
أريد تعريف متغير من نوع enum ويعمل قيم معينه مثلا X1 و X2 و X3
كود PHP:
enum X_Values
{
X1,
X2,
X3,
};
نستخدم enum ثم كتابة إسم المتغير الذي نريده وبداخل الأقواس نضع أسماء القيم التي نريدها وبينها فاصله
وفي نهاية الكود نضع ;
أذا لم تقم بكتابة قيم X1 و X2 و X3 فسوف تأخذ الأرقام بالترتيب 0 و 1 و 2
أو يمكنك كتابة قيمها
مثال
كود PHP:
enum X_Values
{
X1=100,
X2=30,
X3=-5,
};
أو يمكنك كتابة أحد القيم وترك القيم الأخرى في هذه الحاله القيم التاليه سوف تأخذ الرقم المتغير السابق لها + 1
مثال
كود PHP:
enum X_Values
{
X1,
X2=30,
X3,
};
في المثال السابق X1=0 و X2=30 و X3=31
ولتعريف متغير خارجي يحمل نفس القيم سيصبح الكود
كود PHP:
input X_Values MyVariableName=X1;
ملحوظه :
- تأخذ أرقام صحيحه فقط
- عند تعريف داتا من نوع enum لوضعها كمتغير خارجي يجب أن تعرف قبل كود تعريف المتغيرات الخارجيه
- يمكن إستخدام القيم X1 و X2 و X3 بداخل أي داله أخرى فكأنها معرفة كمتغير عام Global