18-01-2016, 04:20 PM
18-01-2016, 08:07 PM
(18-01-2016, 04:20 PM)karika2 كتب : [ -> ]بسم الله الرحمن الرحيمrecord أو الهياكل
ممكن أعرف ما هى ميزة record انا بعرف استخدمة ولكن اريد اعرف ما هى مميزاتة وهل يوجد بديل يقوم بعملة ام لا ....؟
في أغلب الأحيان تكون بنية لشيء ما
بنسبة لسؤالك ما هي ميزة record
كمثال عندنا إعدادات ونريد حفظها في ملف وفي وقت آخر سنحتاج تلك الإعدادات لإعادة معالجتها وحفظها مرة أخرى
هنا بإستعمال record ستكون العملية سهلة في الحفظ و تحميل.
بنسبة لسؤالك هل يوجد بديل يقوم بعملة ام لا
نعم يوجد بديل.
في برمجة دائما المسالك كثيرة لكن في الاخير الهدف واحد
18-01-2016, 10:43 PM
بارك الله فيك أخى الكريم ,
حاولت أبحث عن أمثله لها ولكن لم أجد ولكن المعلومة وصلت أخى شكراّ لك مرة اخرى
حاولت أبحث عن أمثله لها ولكن لم أجد ولكن المعلومة وصلت أخى شكراّ لك مرة اخرى

18-01-2016, 11:29 PM
للفائدة أكثر
هذا مثال توضيحي
عرفنا الحقل TMyRecord يتكون من ثلاث متغيرات لأنواع مختلفة
قمنا بتصفير كل القيم الإفتراضية التي يحملها الحقل
بعدها ملأنا كل الأقسام
قمنا بكتابة كل داتا الموجودة في الحقل إلى الملف MyFile.bin
أعدنا تصفير الحقل
ثم قمنا بتحميل الملف MyFile.bin وإعادة ملأ الحقل من جديد
ثم إعادة إسناد قيمة أخرى للمتغير Int
ثم اعدنا كتابة داتا من جديد في الملف MyFile2.bin
من خلال إستعمال record نجد أنه هناك سهولة في تعامل معا هذه داتا حفظ ها وإعادة تحميلها
خاصتا إذا كانت كل متغيرات الحقل لا تحمل تعريف (array of)
هذا مثال توضيحي
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)
19-01-2016, 11:31 AM
السلام عليكم ورحمة الله
بديل Record هو Class
انصحك بمراجعة موضوع "البرمجة بالمنحنى للكائن OOP خطوة، خطوة" بالعدد الرابع وما بعده من مجلة دلفي للعرب
http://delphi4arab.net/forum/showthread.php?tid=2632
بديل Record هو Class
انصحك بمراجعة موضوع "البرمجة بالمنحنى للكائن OOP خطوة، خطوة" بالعدد الرابع وما بعده من مجلة دلفي للعرب
http://delphi4arab.net/forum/showthread.php?tid=2632