نوع البيانات المعرفة من قبل المستخدم

يحتفظ بالبيانات في التنسيق الذي تعرّفه. كشف Structureيقوم بـتعريف التنسيق.

تساند الإصدارات السابقة من Visual Basic النوع المعرف من قبل المستخدم (UDT). الإصدار الحالي يقوم بتوسيع UDT إلى بنية. الـبنية هي ارتباط واحد أو أكثر من الأعضاء من أنواع بيانات مختلفة. يعامل Visual Basic بنية كأنها وحدة مفردة، على الرغم من أنه يمكنك أيضًا الوصول إلى أعضائها بشكل فردي.

ملاحظات

قم بـتعريف واستخدام نوع بيانات بنية عند الحاجة إلى دمج أنواع بيانات مختلفة في وحدة واحدة, أو عندما لا يقوم أحد من أنواع البيانات الأولية بخدمة احتياجاتك.

الـقيمة الافتراضية لنوع بيانات البية تتكون من تركيبة القيم الافتراضية لكل من أعضائها.

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

تعريف بنية يبدأ بـ كشف بنية وينتهي مع كشفEndStructure. كشف Structure يوفر اسم البنية والذي هو أيضاً معرّف نوع البيانات التي تعريفها البنية. يمكن أن تستخدم أجزاء أخرى من التعليمات البرمجية هذا المعرف لتقوم بتعريف متغيرات, معلمات, ودالة تقوم بارجاع قيم لتكون من نوع بيانات هذه البنية.

التعريفات بين Structure و كشوف EndStructure تعرف أعضاء البنية.

مستويات وصول العضو

يجب أن تقوم بتعريف كل عضو باستخدام عبارة Vsual Basic) Dim) أو الكشف الذي يعين مستوى الوصول ، مثل عام (Visual Basic), صديق (Visual Basic)، أو خاص (Visual Basic). إذا استخدمت كشف Dim, يفترض مستوى الوصول إلى العام.

التلميحات البرمجية

  • استهلاك الذاكرة كما هو الحال مع كل أنواع البيانات المركبة لا يمكنك بأمان حساب الاستهلاك الإجمالي للذاكرة من بنية عن طريق إضافة عمليات التخصيص التخزين الاسمي لأعضاءها معاً. علاوة على ذلك، لا يمكنك بأمان أن تفترض أن ترتيب المخزن في الذاكرة هو نفس ترتيب تعريفاتك. إذا كنت بحاجة إلى التحكم في تخطيط بنية التخزين يمكنك تطبيق StructLayoutAttribute السمة إلى Structure الكشف.

  • اعتبارات التوافق. إذا كنت تقوم بالتعامل مع مكونات لم تكتب لـ .NET Framework, على سبيل المثال كائنات Automation أو COM، ضع في عين الاعتبار أن الأنواع المعرفة من قبل المستخدم في البيئات الأخرى غير متوافقة مع أنواع Visual Basic.

  • التوسيع. لا توجد أي تحويل تلقائي إلى أو من أي نوع بيانات بنية. يمكن تعريف عوامل التحويل على البنية باستخدام كشف العامل، و يمكنك بتعريف كل عامل تحويل ليكون Widening أو Narrowing.

  • نوع الأحرف. لا تحتوي أنواع بيانات البنية لا على نوع القيمة الحرفية أو معرّف حرف النوع.

  • نوع إطار العمل. لا يوجد أي نوع مطابقة في .NET Framework. ترث كل البنيات من فئة .NET Framework System.ValueType، ولكن لا توجد بنية فردية تتوافق مع System.ValueType.

مثال

يُظهر المثال التالي المخطط التفصيلي لتعريف بنية.

[Public | Protected | Friend | Protected Friend | Private] Structure structname
    {Dim | Public | Friend | Private} member1 As datatype1
    ' ...
    {Dim | Public | Friend | Private} memberN As datatypeN
End Structure

راجع أيضًا:

المرجع

خلاصة نوع بيانات (Visual Basic)

ValueType

دوال تحويل النوع

خلاصة التحويل

كشف بنية

التوسيع في (Visual Basic)

تضييقي (Visual Basic)

StructLayoutAttribute

المبادئ

كفاءة استخدام أنواع البيانات

موارد أخرى

البنيات