الفرق بين المراجعتين لصفحة: «برمجة سي ++/الدرس الخامس عشر»

تم حذف المحتوى تمت إضافة المحتوى
تعديلات إملائية, Replaced: الى → إلى
تعديلات إملائية, Replaced: إسم → اسم (5) (AWB)
سطر 7:
Structure أو البناء أو البنية هو مفهوم مفيد جدا في البرمجة، وهو يعتبر أحد الأسس التي أدت إلى ولادة البرمجة الكائنية التوجه. ويستخدم لجمع مجموعة من المتغيرات المختلفة المتعلقة بشيء ما معا، فعلى سبيل المثال، لو كان برنامجنا يسعى لبناء وتخزين ملفات طلبة المدارس، فما هي مجموعة المتغيرات التي نتحدث عنها، وما هو ''الشيء'' الذي نتحدث عنه.
 
إن ''الشيء'' الذي نتحدث عنه في مثل هذه الحالة هو الطالب، بالطبع ليس هناك في المدارس طالب واحد، ولكن وحدة البناء ستكون الطالب ، وعندها يمكننا تكرار هذه الوحدة بأي عدد نشاء من المرات. أما المتغيرات فهي قد تكون إسماسم الطالب مثلا! تاريخ ميلاده! علاماته...إلخ.
 
لو أردنا أن نجعل البرنامج يتعامل مع طالب مثلا دون إستخدام وحدة البناء Struct ، وأردنا أن نتحدث عن سنة ميلاده ومجموع علاماته وإسمهواسمه الأول فقط!! قد يكون شكل الإعلان عن هؤلاء الطلبية ربما كالآتي :
*''ملاحظة:إرساء قيم الإسمالاسم مكتوبة بشكل مبسط لأغراض التوضيح ، وهذه ليست الطريقة الصحيحة لعملها.''
 
<div dir="ltr">
سطر 46:
|[[صورة:Arrays.png|left]]
|}
وبكلمات أخرى ، فإن ما يتم هو البحث عن الإسمالاسم Hanna في مصفوفة الأسماء، فنجد مثلا أن موقعه هو الموقع رقم 5 مثلا في مصفوفة الأسماء، ولمعرفة سنة ميلاده، فإننا سنبحث عن القيمةالموجودة في الموقع الخامس من مصفوفة أعوام الميلاد! وهكذا...
 
ألن يكون من الأفضل أن نرسي قيمة لإسملاسم الطالب ، وبعدها وبسهولة نرسي قيمة لتاريخ ميلاده وأخرى لعلاماته، كل ذلك بمعاملة بناء من نوع طالب بمعلومات فرعيه عنه، بدلا من العديد من المصفوفات التي عليك تتبعها بشكل منفصل؟ ... إلخ. إذا شعرت أن هذا الحل هو الأنسب ، فما عليك إلا إستخدام بناء او Struct للطالب. وإليك مثال ذلك:
<div dir="ltr">
struct student