المشاركات : 245
المواضيع 69
:
: 12
الإنتساب : Jan 2013
18-01-2016, 04:20 PM
(آخر تعديل لهذه المشاركة: 19-01-2016, 09:34 AM بواسطة Admin.)
بسم الله الرحمن الرحيم
ممكن أعرف ما هى ميزة record انا بعرف استخدمة ولكن اريد اعرف ما هى مميزاتة وهل يوجد بديل يقوم بعملة ام لا ....؟
> مبرمج مبتدئ < سبحان الله بحمده... سبحان الله العظيم
المشاركات : 654
المواضيع 34
:
: 106
الإنتساب : Aug 2010
(18-01-2016, 04:20 PM)karika2 كتب : بسم الله الرحمن الرحيم
ممكن أعرف ما هى ميزة record انا بعرف استخدمة ولكن اريد اعرف ما هى مميزاتة وهل يوجد بديل يقوم بعملة ام لا ....؟
record أو الهياكل
في أغلب الأحيان تكون بنية لشيء ما
بنسبة لسؤالك ما هي ميزة record
كمثال عندنا إعدادات ونريد حفظها في ملف وفي وقت آخر سنحتاج تلك الإعدادات لإعادة معالجتها وحفظها مرة أخرى
هنا بإستعمال record ستكون العملية سهلة في الحفظ و تحميل.
بنسبة لسؤالك هل يوجد بديل يقوم بعملة ام لا
نعم يوجد بديل.
في برمجة دائما المسالك كثيرة لكن في الاخير الهدف واحد
سبحان الله وبحمده سبحان الله العظيم
المشاركات : 245
المواضيع 69
:
: 12
الإنتساب : Jan 2013
بارك الله فيك أخى الكريم ,
حاولت أبحث عن أمثله لها ولكن لم أجد ولكن المعلومة وصلت أخى شكراّ لك مرة اخرى
> مبرمج مبتدئ < سبحان الله بحمده... سبحان الله العظيم
المشاركات : 654
المواضيع 34
:
: 106
الإنتساب : Aug 2010
للفائدة أكثر
هذا مثال توضيحي
PHP كود :
type
TMyRecord = record
Byt: Byte;
Int: Integer;
Str: ShortString;
end;
var
MyRecord: TMyRecord;
MS: TMemoryStream;
begin
MS := TMemoryStream.Create;
try
ZeroMemory(@MyRecord, SizeOf(TMyRecord));
MyRecord.Byt := 255;
MyRecord.Int := 2016;
MyRecord.Str := 'Delphi4Arab';
// Save to MyFile.bin
MS.WriteBuffer(MyRecord, SizeOf(TMyRecord));
MS.SaveToFile('MyFile.bin');
// Load from MyFile.bin
ZeroMemory(@MyRecord, SizeOf(TMyRecord));
MS.Clear;
MS.LoadFromFile('MyFile.bin');
MS.ReadBuffer(MyRecord, SizeOf(TMyRecord));
// Save to MyFile2.bin
MyRecord.Int := 1954;
MS.Clear;
MS.WriteBuffer(MyRecord, SizeOf(TMyRecord));
MS.SaveToFile('MyFile2.bin');
finally
MS.Free;
end;
end;
عرفنا الحقل TMyRecord يتكون من ثلاث متغيرات لأنواع مختلفة
قمنا بتصفير كل القيم الإفتراضية التي يحملها الحقل
بعدها ملأنا كل الأقسام
قمنا بكتابة كل داتا الموجودة في الحقل إلى الملف MyFile.bin
أعدنا تصفير الحقل
ثم قمنا بتحميل الملف MyFile.bin وإعادة ملأ الحقل من جديد
ثم إعادة إسناد قيمة أخرى للمتغير Int
ثم اعدنا كتابة داتا من جديد في الملف MyFile2.bin
من خلال إستعمال record نجد أنه هناك سهولة في تعامل معا هذه داتا حفظ ها وإعادة تحميلها
خاصتا إذا كانت كل متغيرات الحقل لا تحمل تعريف (array of)
سبحان الله وبحمده سبحان الله العظيم
المشاركات : 3,703
المواضيع 101
:
: 579
الإنتساب : Feb 2008
السلام عليكم ورحمة الله
بديل Record هو Class
انصحك بمراجعة موضوع "البرمجة بالمنحنى للكائن OOP خطوة، خطوة" بالعدد الرابع وما بعده من مجلة دلفي للعرب
http://delphi4arab.net/forum/showthread.php?tid=2632
رَبَّنَا اغْفِرْ لِي وَلِوَالِدَيَّ وَلِلْمُؤْمِنِينَ يَوْمَ يَقُومُ الْحِسَابُ