例を挙げましょう。
私はいくつかの一般的なクラス/インターフェースの定義を持っています:
interface IGenericCar< T > {...}
上記のクラスに関連付けたい別のクラス/インターフェイスがあります。次に例を示します。
interface IGarrage< TCar > : where TCar: IGenericCar< (**any type here**) > {...}
基本的に、またはにIGenericCar
関係なく、ジェネリックIGarrageがに依存するようにします。これは、その型に依存しないためです。IGenericCar<int>
IGenericCar<System.Color>
T
内部でジェネリック型を使用する必要がある場合はどうすればよいIGarage<TCar>
ですか?option2で可能性を見つけることができません。最善の解決策は、IGarage<TCar>
タイプT
を分析してタイプを見つけた場合TCar
です。