سي بلص بلص: الدرس السادس عشر
لو أخذنا مثال للبنية أو struct بحيث أننا نصمم لعبة قتالية بسيطة، طبعا هذه اللعبة فيها شخصيات مقاتلة، لها عدة صفات تهمنا في اللعبة، مثلا إحداثيات الموقع الحالية على الخارطة، عداد الصحة والذي يقل كلما زادت الإصابات، والفريق الذي ينتمي إليه. يمكن بالتأكيد إيجاد خصائص أخرى نحتاجها، ولكن وللتوضيح سنكتفي بهذه الصفات.
ما هي القيم التي سنحتاجها، الإحداثي السيني لموقعه (عدد صحيحي، موجب أو سالب)، الإحداثي الصادي لموقعه(عدد صحيح موجب أو سالب)، صحته (بالنسبة المئوية 1-100)، والفريق الذي ينتمي إليه (0 للفريق الأول و1 للفريق الثاني).
إذا فإن الشيفرة لهذا البناء قد تبدو كالآتي :
typedef struct { int Xposition; int Yposition; int health; bool team; } warrior ;
ويمكن وضع هذا التعريف بالبنية في أي مكان في شيفرة المصدر بشرط أن يسبق أي إستخدام لهذا البناء.
الآن لنتخيل برنامج بسيط، نهدف من خلاله توضيح الفكرة