بوو: تحديد نوع التجزئة صراحة
-
23-09-2019 - |
سؤال
أنا جديد على بوو ، وأحاول معرفة كيفية إعلان نوع التجزئة. عندما أفعل:
myHash = {}
myHash[key] = value
(later)
myHash[key].method()
يشكو المترجم من أن "الطريقة ليست عضوًا في كائن". أجمع أنه لا يعرف نوع القيمة في التجزئة.
هل هناك أي طريقة يمكنني من خلالها إعلان المترجم ما هو نوع المفاتيح والقيم للتجزئة بحيث لا تشكو؟
المحلول
يشبه علامة التجزئة المبنية في BOO إلى حد كبير. NET Hashtable - مفتاح وقيمة كل إدخال هما من النوع "كائن".
أفضل رهان لك هو استخدام قاموس عام:
import System.Collections.Generic
myHash = Dictionary[of string, Foo]()
سيؤدي هذا المثال إلى إنشاء قاموس حيث يكون نوع المفتاح عبارة عن سلسلة ، وستكون القيمة من نوع Foo
نصائح أخرى
خيار آخر يترك الكود الخاص بك دون تغيير هو تمكين كتابة البط مع -ducky
تحول. أنا شخصياً أستخدم المجموعات من System.Collections.Generic
بدلاً من القائمة المدمجة وأنواع القاموس ، لأن الأداء أفضل بكثير.
لا تنتمي إلى StackOverflow