الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

الدرس السادس في لغة Object pascal : السجلات

بدأه أحمد أبو عبد البر في 23 مارس 2013 · 0 رد · 2,174 مشاهدة · في لغة Delphi
مشاركة: واتساب X فيسبوك تيليجرام
#1

بسم الله الرحمن الرحيم

السجلات Records

 

كما لاحظنا أن المصفوفات تحتوي على مجموعة متغيرات من نوع واحد، فإن السجلات تجمع بين مجموعة من أنواع مختلفة تسمى حقول Fields، ولكنها تمثل كيان واحد. مثلاً إذا افترضنا أننا نريد تسجيل معلومات سيارة، فنجد أن هذه المعلومات هي:

 

  1. نوع السيارة: متغير مقطعي

  2. سعة المحرك: حدد حقيقي (كسري)

  3. سنة التصنيع: متغير صحيح

فلايمكن التعبير عن هذه الأنواع المختلفة كوحدة واحدة إلا بإستخدام السجل كما في المثال التالي:

 

program Cars;

{$mode objfpc}{$H+}

uses
  {$IFDEF UNIX}{$IFDEF UseCThreads}
  cthreads,
  {$ENDIF}{$ENDIF}
  Classes
  { you can add units after this };

type
  TCar = record
    ModelName: string;
    Engine: Single;
    ModelYear: Integer;
  end;


var
  Car: TCar;
begin
  Write('Input car Model Name: ');
  Readln(Car.ModelName);
  Write('Input car Engine size: ');
  Readln(Car.Engine);
  Write('Input car Model year: ');
  Readln(Car.ModelYear);

  Writeln;
  Writeln('Car information: ');
  Writeln('Model Name  : ', Car.ModelName);
  Writeln('Engine size : ', Car.Engine);
  Writeln('Model Year  : ', Car.ModelYear);

  Write('Press enter key to close..');
  Readln;
end.

 

 

في المثال السابق نجد أننا قمنا بتعريف نوع جديد بإستخدام الكلمة المفتاحية type :

 

type
  TCar = record
    ModelName: string;
    Engine: Single;
    ModelYear: Integer;
  end;

 

 

 

وسمينا هذا النوع الجديد TCar والحرف T هو من كلمة Type حتى نفرق بينه وبين المتغيرات.

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

 

وعندما نريد استخدام هذا النوع الجديد لابد من تعريف متغير يمثل هذا النوع، حيث لايمكننا استخدام النوع TCar مباشرةً كما لايمكننا إستخدام النوع Integer مباشرة إلا بعد تعريف متغير مثلاً I أو Num. لذلك قمنا بتعريف المتغير Car من النوع TCar في بند المتغيرات:

 

var  Car: TCar;

 

 

وعندما نريد إدخال قيم للمتغيرات أو طباعتها نستخدم هذه الطريقة للوصول لمتغير ما في سجل:

 

  Car.ModelName

 

 

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

 

=================================================

الدورة منقولة من كتاب الأستاذ الفاضل معتز عبد العظيم

تم تعديل هذه المشاركة بواسطة أحمد أبو عبد البر في 23 مارس 2013 في 19:43

1

vVIfFr.gif

مدونتي



إذا رأيتموني غبت فأطلت الغياب فربما أكون قد انتقلت عن الدنيا إلى الآخرة

فما أحوجني إلى دعوة صالحة من أخ لي كريم

 

http://www.tvquran.com/

 

LoGeCom

أول برنامج عربي للمحاسبة والتجارة وإدراة المخازن يعمل على اللينكس والماك والويندوز 

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…