bachirk كتب:البرنامج لدي يستدعي unit اسمها u1تحوي الدالة a
function a:longint; begin a:=1000;اريد ان انفذ البرنامج
واثناء تنفيذ البرنامج اغير 1000 في الدالة واجعلها 100
اريد ان يأخذ البرنامج هذا التغيير في الحسبان بدون اعادة تشغيله
أنا لم أفهم سؤلك جيدا الأخ BachirK مع ذلك قد أتمكن من الإجابة :
يوجد في دلفي ما يسما بمؤشرات الدوال والإجراءات أو الدوال والإجراءات الديناميكية "لست متأكد من اسمها العلمي وأرجو التصحيح لمن لديه العلم بذلك" هي عبارة دوال وإجراءات يمكن تغيير عملها ديناميكيا بعد تنفيذ البرنامج كلما أتت الحاجة دون اللجوء إلى التغيير في المصدر وإعادة تجميع البرنامج. وفكرتها هي التصريح بمؤشرات بحيث تسمح بتغيير التأشير على دوال أو إجراءات مختلفة تمت برمجتها مسبقا " هنا أقول مسبقا أي قبل تنفيذ البرنامج".
كيف يتم ذلك ؟ .
- أولا قم بتشكيل نمط خاص من نمط دالة أو إجراء كما يلي:
TFunction=Function:Integer; // نمط دالة
أو
// TProcedure=Procedure;// نمط إجراء
أو
// TProcedure=Procedure(Sender: TObject);// يمكن تحديد البارامترات
// مع العلم يجب إسناد دالة لها نفس البارامترات
Type
بعد ذلك قم بالتصريح بمتغير جديد من النمط الذي أنشأته سابقا كما يلي:
VarFunction:TFunction;
Var
