03-09-2009, 12:17 PM
إقتباس :ولماذا هناك كلمات ال if, then,endif وو الى آخره معرفة تحت المتغيّرات ؟ يعني هل هذه اسمآء متغيّرات ؟, لا, لا اظن لذلك ؟؟؟مممممم معك حق أخي المبرمج :disgust:...
لماذا تصنع شركات برامج التطوير أشياء مبهمة أحيانا :brow:...
هذه الرموز هي موجهات للمترجم وهي ما يعرف بـ Directives،مثلا:
كود :
$IFDEF WIN32
{$ELSE}
{$ENDIF}IF System IS Win32
للتحقق من أننا في نظام ويندوز 32 bit
وELSE تعرفها... صح :laugh:
و ENDIF تعني نهاية IF
فإذا كنا في ويندوز فسيقوم الـ Compiler بتنفيذ ما هو موجود في نطاق الشرط IF وإلا فسيقوم بما هو مكتوب في مجال ELSE.
في المثال تم التحقق من وجود نسخة ويندوز لأن Registry غير موجود في Linux.
ومثل هذا ما يستخدم لكتابة كود يعمل على جميع (أو أكثر) نسخ دلفي، وذلك بكتابة شرط التحقق من نسخة دلفي المستخدمة، وهذا يسمح لك بتوزيع مكونات متوافقة مع معظم نسخ دلفي، مثال:
كود :
{$DEFINE DELPHI6UP}كود :
var
{$IFDEF VER120}
I: TColorRef;
{$ELSE}
I: Integer;
{$ENDIF}كود :
*VER70 is Borland Pascal 7.0
*VER80 is Delphi 1.0
*VER90 is Delphi 2.0
*VER93 is BCB++ 1.0
*VER100 is Delphi 3.0
*VER110 is BCB++ 3.0
*VER120 is Delphi 4.0
*VER125 is BCB++4.0
*VER130 is Delphi 5.0هناك مواضيع أخرى في رأسي، ربما يسعفنى الوقت لها :cryss: في المستقبل.
شكرا كثيرا على الأكواد أخي MjIrIm بالتوفيق.
بالتوفيق أخي المبرمج.
اللهم احقن دماء المسلمين، لا تنسوهم بالدعاء...

