كل شيء عن الوظائف الخاصة init start deinit
النتائج 1 إلى 4 من 4
  1. #1
    تاريخ التسجيل
    Apr 2006
    الإقامة
    السعودية
    العمر
    47
    المشاركات
    6,555

    افتراضي كل شيء عن الوظائف الخاصة init start deinit

    هناك ثلاث وظائف مسبقة التعريف في لغة MQL4 وموجودة في كل برنامج مهما كان نوعه .

    الوظيفة الأولى: init

    يتم استدعاء هذه الوظيفة عند بداية تهيئة الوحدة النمطية ( المؤشر أو الاكسبيرت أو السكريبت ).

    ويتم تنفيذ كل ما تحتوي من تعليمات برمجية واستدعاءات لوظائف أخرى.

    بشكل عام يتم وضع كل العمليات المهيئة لعمل البرنامج أو الوحدة النمطية مثل تعريف قيم أولية للمتحولات أو حجز ذاكرة للمصفوفات وملئها بالمعلومات أو معرفة الوضع الحالي أو وضع كلمات وملصقات على الشارت لأول مرة.

    ببساطة هذا يعني أن هذه الوظيفة مخصصة لجميع الأعمال البرمجية التي نريد أن يقوم بها البرنامج لمرة واحدة فقط في بداية التنفيذ.

    يمكن حذف هذه الوظيفة أو تركها فارغة من التعليمات بدون أن يؤثر هذا الحذف على سير البرنامج.


    الوظيفة الثانية: start

    هذه هي الوظيفة الرئيسية لبرنامجنا الذي يمكن أن يكون مؤشرا أو اكسبيرتا أو سكريبتا.

    ويتم تنفيذ كل التعليمات البرمجية داخله مع كل تغير في السعر على مستوى Tick أي اللحظي.

    وفي هذه الوظيفة نقوم بكل العمل الرئيسي للبرنامج من رسم أو معالجة أو فتح صفقات وغيرها من العمليات.

    يتم تنفيذ هذه الوظيفة بشكل مختلف قليلا بين أنواع البرامج الثلاثة:

    في الاكسبيرت يتم تنفيذ هذه الوظيفة بعد استقرار الاكسبيرت على الشارت ثم حدوث تغير لحظي في السعر.

    في المؤشر يتم تنفيذ هذه الوظيفة مباشرة بعد وضع المؤشر على الشارت بدون شرط حدوث تغير في السعر، ثم تنفذ بعد كل تغير في السعر.

    في السكريبت يتم تنفيذ هذه الوظيفة مباشرة بعد وضع السكريبت على الشارت دون انتظار لتغير في السعر.

    ويجب الانتباه جيدا إلى هذه الفوارق الطفيفة في ظاهرها لكنها على مستوى كبير من الأهمية وخصوصا عند تعاملنا مع الاكسبيرتات.

    إن أي برنامج لا يحتوي على هذه الوظيفة لن يعمل أبدا.

    الوظيفة الثالثة: deinit

    وهي عكس الوظيفة init أي أنها تنفذ مرة واحدة فقط عند إزالة البرنامج من على الشارت.

    ويتم وضع كافة التعليمات البرمجية التي تقوم بتنظيف الشارت من مخلفات البرنامج.

    مثل إزالة اللصاقات النصية أو حذف الملاحظات المكتوبة على الشارت أو إزالة الخطوط المرسومة وغيرها من الكائنات التي رسمها البرنامج على الشارت.

    أي برنامج لا يقوم بعملية التنظيف عند إزالته هو برنامج غير محترم وغير احترافي.


    يمكن استدعاء هذه الوظائف الثلاثة من أي وظيفة أخرى ولكن لا ينصح أبدا باستدعاء الوظيفة start مثلا من الوظيفة init لأن هذا الأمر قد يسبب مشاكل في التنفيذ.
    توقيع العضو
    اثنان لا يجتمعان علم وسوء خلق

  2. #2
    تاريخ التسجيل
    Sep 2006
    الإقامة
    المملكة العربية السعودية
    المشاركات
    2,924

    افتراضي رد: كل شيء عن الوظائف الخاصة init start deinit

    جزاك الله كل خير

  3. #3
    تاريخ التسجيل
    May 2007
    الإقامة
    arab land
    المشاركات
    605

    افتراضي رد: كل شيء عن الوظائف الخاصة init start deinit

    شيء رائع

  4. #4
    تاريخ التسجيل
    Dec 2007
    المشاركات
    7,670

    افتراضي رد: كل شيء عن الوظائف الخاصة init start deinit

    يعطيك ألف عافية

    والله يجعله في ميزان حسناتك

المواضيع المتشابهه

  1. The Start (البدايه)
    By محمد سلامة in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادن
    مشاركات: 9
    آخر مشاركة: 04-02-2010, 01:47 AM
  2. البداية &&&& Start
    By سيد العملات in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادن
    مشاركات: 123
    آخر مشاركة: 12-08-2009, 03:56 PM
  3. start forex
    By thaer in forum سوق تداول العملات الأجنبية والسلع والنفط والمعادن
    مشاركات: 2
    آخر مشاركة: 10-06-2009, 01:57 PM
  4. شركة start forex????
    By مبتدئ 1 in forum استفسارات وأسئلة المبتدئين
    مشاركات: 1
    آخر مشاركة: 01-08-2008, 11:55 PM
  5. توصيات اسبوعية START 03 DEC END 07 DEC 2007
    By ABHAFXS in forum توقعات وتوصيات سوق العملات
    مشاركات: 17
    آخر مشاركة: 06-12-2007, 12:10 AM

الاوسمة لهذا الموضوع