مقدمة إلى لغة باسكال الحديثة
#1
عبارة عن مقدمة بسيطة
للكاتب  Michalis Kamburelis من شركة محرك الألعاب Castle Engine

المقال موجه للمبرمجين و ليس مدخل للمبتدأ يجب على الاقل ان تكون لك معرفة بلغة باسكال القديمة
https://castle-engine.io/modern_pascal_i...ction.html
[-] كل من 6 users say قال شكرا ل rahiche على المشاركة المفيدة
  • أبو معاذ, zaktech, bassem_43, delphi17, Mr.DOS, Delphi4Us
الرد
#2
السلام عليكم شكراً على طرح هدا الكتاب
هده free pascal
الرد
#3
لفت انتباهي هذا الكود ولم اهضم operator*

كود :
{$mode objfpc}{$H+}{$J-} uses StrUtils; operator* (const S: string; const A: Integer): string; begin Result := DupeString(S, A); end; begin Writeln('bla' * 10); end
الرد
#4
السلام عليكم
اضنها تقوم بنسخ السلسلة

الق نظرة هنا
https://www.freepascal.org/docs-html/ref...23200015.3
:: من يملك المعلومة يملك الميدان :: 
الرد
#5
(01-05-2018, 09:06 PM)AX302 كتب : السلام عليكم
اضنها تقوم بنسخ السلسلة

الق نظرة هنا
https://www.freepascal.org/docs-html/ref...23200015.3

 صحيح هي تقوم بنسخ السلسة في المثال الذي انا ذكرته لكن ليست هي من تقوم يذلك في الاصل بل الدالة

كود :
DupeString ام عن operator* فهي اقرب الى الدالة في هيكليتها وبنائها
الرد
#6
(01-05-2018, 08:54 PM)delphi17 كتب : لفت انتباهي هذا الكود ولم اهضم operator*

كود :
{$mode objfpc}{$H+}{$J-} uses StrUtils; operator* (const S: string; const A: Integer): string; begin Result := DupeString(S, A); end; begin Writeln('bla' * 10); end
في هذا الفرع Operator Overloading:

يتحدث عن امكانية اعادة تحميل او تعريف لمعامل موجود مسبق في اللغة, ك *,-,/,+,=:, < وغيرها, بحيث يمكنك استخدامه من نوع بيانات غير المحددة له مسبقا, وفي مثاله هو استخدم دالة موجودة مسبقا وهي dupestring لتكرار قيمة نصية بالعدد الذي تحدده, هكذا كلما استعملت المعامل * مع قيمة نصية فستكرر من خلال الدالة dupestring.
والله اعلم يمكنك البحث اكثر عن operator overloading وستجد شروح مفصلة عنه.
[-] كل من 1 user says قال شكرا ل Ben.Ja على المشاركة المفيدة
  • delphi17
الرد
#7
[quote pid='45182' dateline='1525278772']
في هذا الفرع Operator Overloading:

يتحدث عن امكانية اعادة تحميل او تعريف لمعامل موجود مسبق في اللغة, ك *,-,/,+,=:, < وغيرها, بحيث يمكنك استخدامه من نوع بيانات غير المحددة له مسبقا, وفي مثاله هو استخدم دالة موجودة مسبقا وهي dupestring لتكرار قيمة نصية بالعدد الذي تحدده, هكذا كلما استعملت المعامل * مع قيمة نصية فستكرر من خلال الدالة dupestring.
والله اعلم يمكنك البحث اكثر عن operator overloading وستجد شروح مفصلة عنه.

شكراً هذا ايضا ما توصلة اليه وقد جربتها على  lazaurs/freepascal لكن يبقى هنك لبس
[/quote]
الرد
#8
شكراً هذا ايضا ما توصلة اليه وقد جربتها على lazaurs/freepascal لكن يبقى هنك لبس
ما هو الغير مفهوم لحد الان ؟
ألقي نظرة على الدرس ربما يفيدك ::: الدرس بلغة كوتلين لكن لا تهم اللغة
https://youtu.be/rfEexTRb51c?list=PLClgJ...DUE6oFhPUs
الرد


التنقل السريع :


يقوم بقرائة الموضوع: بالاضافة الى ( 1 ) ضيف كريم