他のオブジェクトを検索するために使用したいオブジェクトがあります。を使用しDictionary<TKey, TValue>()
ます。
key オブジェクトには、それを一意に識別する 2 つの文字列 ( となど) がKeyObj.Str1
ありKeyObj.Str2
ます。
辞書のキーとして何を使用することをお勧めしますか?
1: 文字列の連結。
Dictionary<String, TValue>();
Key = KeyObj.Str1:KeyObj.Str2; ("somestring:anotherstring")
2: 各オブジェクトを識別する一意の整数?
Dictionary<int, TValue>();
KeyObj.ID = _nextID++;
Key = KeyObj.ID;
3: オブジェクトへの参照。
Dictionary<KeyObj, TValue>();
Key = KeyObj;
オプション 3 が最も簡単ですが、参照値に基づいて辞書をインデックス化するのは効率が悪いようです。
キー オブジェクトに 1 つの一意の文字列が含まれている場合、それを使用するのは当然の選択ですが、2 つの文字列の組み合わせだけが一意であると、より困難になります。