1. يتم تخزين الفئات في الكومة، ويمكن لهذه الطريقة ضمان مرونة دورة حياة البيانات الصادرة. على الرغم من وجود بعض الخسارة في الأداء، بسبب تحسين الكومة المدارة، فإن الخسارة صغيرة نسبيًا.
لكن في بعض الأحيان نحتاج فقط إلى بنية بيانات صغيرة نسبيًا، ثم يمكننا التفكير في استخدام البنية
يحب
نموذج نافذة الصف
{
كثافة العمليات العامة اليسار؛
الحق العام؛
}
مثل هذه الفئة، التي تحتوي على عنصري تخزين فقط، تحتاج فقط إلى التعامل مع هذين المتغيرين. ومن ثم يمكن تعريفه على أنه هيكل
نموذج نافذة الهيكل
{
كثافة العمليات العامة اليسار؛
الحق العام؛
windowForm (كثافة العمليات اليسار، كثافة العمليات اليمين)
{
this.Left = left;
this.Right = right;
}
مجموعة الفراغ العامة ()
{
Console.WriteLine("يسار:" + يسار + "يمين:" + يمين);
}
}
بهذه الطريقة، يمكن للهياكل ذات المنشئات تجنب المتاعب ومشاكل الأداء المرتبطة بتحديدها في قائمة الانتظار.
يمكن للهياكل أيضًا تحديد الخصائص، وما إلى ذلك.
2. البنية هي نوع قيمة، يتم تخزينها على المكدس أو في السطر
كما يلي: تعالج طريقتا Set نفس البنية ولا يمكنهما تغيير قيمة Left.
برنامج الصف
{
الفراغ الثابت الرئيسي (سلسلة [] الحجج)
{
windowForm win = new windowForm();
win.set();
تغيير(فوز);
win.set();
Console.Read();
}
تغيير الفراغ الثابت (فوز windowForm)
{
win.Left = 1;
}
}
3. لا يمكن توريث الهيكل
4. مُنشئ البنية هو مُنشئ بدون معلمات مقدم من المترجم، ولا يمكنك تحديد مُنشئ جديد ليحل محله.
5. يتم استخدام البنية بشكل أساسي لهياكل البيانات الأصغر حجمًا، وإذا كانت كبيرة جدًا، فسيكون هناك فقدان للأداء.
6. عند تمرير بنية كمعلمة، استخدم الكلمة الأساسية ref، وإلا فسيتم نسخ محتوى جديد في كل مرة، مما يتسبب في استهلاك الأداء غير الضروري.
7. عندما يتم تعيين بنية إلى بنية أخرى، نظرًا لأن البنية عبارة عن نوع غير مرجعي، فسيتم عمل جميع النسخ في كل مرة، والفصل