MyDictionary
参照型の値を持つ値型のキーを持つように名前が付けられた汎用辞書を制約するために、どのコードを作成しますか?
これが私の答えだったと思います:
public class MyDictionary<Tkey,TValue>:Dictionary<Tkey,TValue>
where Tkey:struct
where TValue:class
{
}
しかし、これが正しい答えかどうかはわかりません..
MyDictionary
参照型の値を持つ値型のキーを持つように名前が付けられた汎用辞書を制約するために、どのコードを作成しますか?
これが私の答えだったと思います:
public class MyDictionary<Tkey,TValue>:Dictionary<Tkey,TValue>
where Tkey:struct
where TValue:class
{
}
しかし、これが正しい答えかどうかはわかりません..
私にはうまく見えます。Nullable
1 つ小さな注意点があります。このようなディクショナリでは、型 ( などint?
) をキーまたは値として使用することはできません。
型パラメータの制約から:
where T: struct
型引数は値型でなければなりません。以外の任意の値型をNullable
指定できます。
where T: class
型引数は参照型でなければなりません。これは、任意のクラス、インターフェイス、デリゲート、または配列型にも適用されます。