ブー:明示的にハッシュの種類を指定します
-
23-09-2019 - |
質問
私はブーに新しいですし、ハッシュの型を宣言する方法を理解しようとしています。私が行うときます:
myHash = {}
myHash[key] = value
(later)
myHash[key].method()
コンパイラは、「メソッドは、オブジェクトのメンバーではない」ことを訴えます。私はそれをハッシュの値がある入力のか分からないことを集めています。
私はハッシュのキーと値を入力し何をコンパイラに宣言することができます任意の方法は、それは文句を言わないようにありますか?
解決
はBOOに組み込みハッシュテーブルは、標準.NETハッシュテーブルに非常に類似している - 。各エントリのキーと値が「オブジェクト」タイプの両方である
あなたの最善の策は、一般的な辞書を使用することです。
import System.Collections.Generic
myHash = Dictionary[of string, Foo]()
キーの種類が文字列の辞書を作成し、値のタイプがFooのであろうこの例
他のヒント
あなたのコードは変更されません別のオプションは-ducky
スイッチと鴨タイピングを可能にするためです。パフォーマンスが非常に優れていると私は個人的に独占的に、代わりに内蔵されたリストと辞書の種類のSystem.Collections.Generic
からコレクションを使用します。
所属していません StackOverflow