السلام عليكم ورحمة الله وبركاته.
بعد قراءتي لشرح أخي romanof حول الإجراءات والدوال والرابط الذي وضعه الأخ عروة ( لكتاب ماركو كانتو - أساسي باسكال )
أصبح عندي بعض التساؤلات...
أريد أن أسأل عن مفهوم إرسال البارامترات في الاجراءات والدوال.
مثلاً هذه الإجرائية :
Procedure fafe(var i: integer); begin i := i + 5; end;
عندما أريد أن أطبقها على برنامج مثلاً:
procedure Tform1.button1click( sender: Tobject); var s: integer; begin s:= 10; fafe(s); end;
عندما وضعت السطر
fafe(s);
[code/ ]
فهذا السطر سيجعل قيمة s = 15 هل هذا هو الإرسال ؟ يعني هل الإرسال هو وضع المتغير s في البرنامج بدل ( البارامتر ) أو المتغير i في الإجرائية الأصلية (fafe )، ثم تطبيق كل الأوامر التي في الإجرائية الأصلية ( التي كانت تطبق على المتغير i ) على المتغير الجديد s ؟
1 - هل هذا الفهم صحيح لمفهوم الإرسال ؟
2 - هل هناك فرق بين مفهوم الإرسال والتمرير Passing أم أنهما كلمتان لمعنى واحد ؟
3 - ما هو معنى التغليف ؟
## طلب : إذا كان عند بعض الإخوة بعض التمارين حول الإجراءات والدوال فأرجو أن يضعها هنا حتى أتمكن من فهم هذا الموضوع بشكل جيد، وإذا كان معها حلولها يكون أفضل.
مشكورين مقدماً...
وفقكم الله...
