مجموعات استكشاف الأخطاء وإصلاحها

تسرد هذه الصفحة بعض المشاكل الشائعة التي تحدث عند العمل مع الإجراءات.

استخدام نوع خاطئ من مجموعة

توجد عدة أنواع من مجموعات متوفر Visual Basic للمطور: الفئة Visual Basic Collection ومجموعة فئات بواسطة .NET Framework. هذه الفئات غير متوافقة مع بعضها البعض. وهذا يعني أنه إذا كنت تقوم بتعريف متغير ليكون من نوع واحد من مجموعة لا يمكنك تعيين كائن نوع آخر إلى هذا المتغير. كما يمكنك الوصول إلى أساليب فقط و خصائص تم التصريح عن نوع مجموعة.

و الاختلافات الرئيسية فيما بين فئات مجموعة Visual Basic و .NET Framework تتضمن ما يلي:

  • فهرس أساس. .NET Framework تكون مجموعات تستند إلى صفر ، أثناء Visual Basic مجموعة تستند إلى واحد. وهذا يعني أنه عناصر من Visual Basic تتوفر مجموعة قيم الفهرس من 1 إلى قيمة الخاصية Count ، بينما عناصر من .NET Framework تتوفر مجموعة قيم الفهرس من 0 إلى أقل من قيمة خاصية المجموعة واحدة Count.

  • نوع العنصر المجموعة Visual Basic يعتمد على عناصر نوع Object، وهو غير نوع - آمن لأنه يمكنك إضافة عنصر من أي نوع البيانات. هذه عادةً تتسبب في تخفيض الأداء بسبب يجب أن المحول البرمجيمحاط و غير محاط بالعناصر لتحويلها إلى ومن نوع البيانات كائن. بعض المجموعات .NET Framework أيضاً تجعل عناصر من نوع Object، لكن العديد من الآخرين كتابة بشدة ، مما يعني أنها تعتمد على عناصر من نوع محدد والذي يجعل نوع - آمن عادةً نتيجة في الأداء الأمثل.

  • عناصر keyed. المجموعة Visual Basic يسمح لك بتحديد المفتاح عند إضافة عنصر له. المفتاح هو قيمة فريدة String الذي يمكنك استخدامه فيما بعد الوصول إلى ذلك العنصر المعين. تختلف مجموعات .NET Framework وفقٌاً للمفاتيح. بعضها يدعم المفاتيح و البعض لا.

مساحات الأسماء التي تحتوي على مجموعة فئة متنوعة تُعد التعريفات التالية:

  • Microsoft.VisualBasic — الفئة Visual Basic Collection

  • System.Collections — فئات مجموعة معينة مثل قوائم الانتظار و صفائف بت وجداول التجزئة القواميس

  • System.Collections.Generic — فئات عامة مجموعة تتيح إمكانية إنشاء مجموعات مكتوب بشدة وتحديد العنصر نوع البيانات عند إنشائها

  • System.Collections.Specialized — التخصصية وقمت بشدة بكتابة مجموعة فئات، مثل القواميس القائمة المرتبطة و المختلط متجه بت ومجموعات اسم الكائن مجموعات السلسلة فقط

المنهج الصحيح

تحديد نوع الذي مجموعة يتناسب مع احتياجاتك. تعريف متغير مجموعة ليكون هذا النوع ثم تأكد من إنشاء كائن من نفس النوع. استخدام كامل تأهيل للتأكد من أن التي يتم تعيين نوع المجموعة الذي تنوي. يوضح المثال التالي تعريفات جهازي مع تأهيل الكامل.

Dim customers As New Microsoft.VisualBasic.Collection()
Dim stringQueue As New System.Collections.Generic.Queue(Of String)

حالما تقوم بإنشاء مجموعة من نوع معين تأكد من استخدام أساليب فقط و خصائص تعريف تشغيل هذا النوع. مجموعة Option Strict On لالتقاط أي تعيينات كائن غير صحيح أو الوصول إلى عضو في وقت يحول برمجياً.

راجع أيضًا:

المرجع

Collection

كشف الخيار الصارمِ

المبادئ

الـمجموعات في Visual Basic