فهم واستخدام أنواع بيانات التسجيل في دلفي

click fraud protection

مجموعات حسنا صفائف عظيم.

لنفترض أننا نريد إنشاء ثلاثة صفائف أحادية البعد لـ 50 عضوًا في مجتمع البرمجة الخاص بنا. الصفيف الأول مخصص للأسماء ، والثاني لرسائل البريد الإلكتروني ، والثالث لعدد التحميلات (المكونات أو التطبيقات) لمجتمعنا.

سيكون لكل صفيف (قائمة) فهارس مطابقة والكثير من التعليمات البرمجية للحفاظ على القوائم الثلاث بشكل متوازٍ. بالطبع ، يمكن أن نحاول باستخدام صفيف ثلاثي الأبعاد ، لكن ماذا عن نوعه؟ نحتاج إلى سلسلة للأسماء ورسائل البريد الإلكتروني ، ولكن عددًا صحيحًا لعدد عمليات التحميل.

طريقة العمل مع بنية البيانات هذه هي استخدام دلفي هيكل السجل.

TMember = سجل...

على سبيل المثال ، يُنشئ الإعلان التالي نوعًا من السجلات يُطلق عليه TMember ، وهو ما يمكننا استخدامه في حالتنا.

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

يحتوي نوع TMember على ثلاثة حقول: قيمة سلسلة تسمى الاسم (للاحتفاظ باسم عضو) ، وهي قيمة لنوع السلسلة يسمى البريد الإلكتروني (لبريد إلكتروني واحد) ، وعدد صحيح (الكاردينال) يسمى المشاركات (للاحتفاظ بعدد الطلبات المقدمة إلى تواصل اجتماعي).

instagram viewer

بمجرد قيامنا بإعداد نوع السجل ، يمكننا إعلان أن يكون المتغير من النوع TMember. TMember هو الآن نوع متغير جيد للمتغيرات مثل أي من دلفيأنواع مدمجة مثل String أو Integer. ملاحظة: إعلان نوع TMember ، لا يخصص أي ذاكرة لحقول الاسم والبريد الإلكتروني والمنشورات ؛

لإنشاء مثيل لسجل TMember ، يجب أن نعلن عن متغير من نوع TMember ، كما في الكود التالي:

الآن ، عندما يكون لدينا سجل ، فإننا نستخدم نقطة لعزل حقول DelphiGuide.

ملاحظة: يمكن إعادة كتابة الجزء أعلاه من الشفرة باستخدام معالكلمة الأساسية.

يمكننا الآن نسخ قيم حقول DelphiGuide إلى AMember.

سجل النطاق والوضوح

نوع السجل الذي تم الإعلان عنه في الإعلان عن نموذج (قسم التنفيذ) أو الوظيفة أو الإجراء له نطاق يقتصر على الكتلة التي تم الإعلان عنها. إذا تم الإعلان عن السجل في قسم واجهة الوحدة ، فسيكون له نطاق يشمل أي وحدات أو برامج أخرى تستخدم الوحدة التي يحدث فيها الإعلان.

مجموعة من السجلات

نظرًا لأن TMember يتصرف مثل أي نوع آخر من أنواع كائن Pascal ، يمكننا إعلان مجموعة من متغيرات السجل:

ملاحظة: إليك كيفية القيام بذلك إعلان وتهيئة مجموعة ثابتة من السجلات في دلفي.

السجلات كحقول سجل

نظرًا لأن نوع السجل مشروع مثل أي نوع آخر من أنواع دلفي ، فيمكننا أن يكون حقل السجل هو السجل نفسه. على سبيل المثال ، يمكننا إنشاء ExpandedMember لتتبع ما يقدمه العضو مع معلومات العضو.

إن ملء جميع المعلومات اللازمة لسجل واحد أصبح الآن أكثر صعوبة. المزيد من الفترات (النقاط) مطلوبة للوصول إلى حقول TExpandedMember.

سجل مع الحقول "غير معروف"

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

ومع ذلك ، يمكن أن تكون السجلات المتنوعة مفيدة تمامًا ، إذا وجدت نفسك في موقف لاستخدامها.

instagram story viewer