私はそうは思いませんが、私が諦めて方法を使う前に:
public T this<T>[String index]
{
get{
//return stuff
}
}
クラスに型パラメータがありません。取得したいものに基づいて、別のタイプを返したいだけです。
例えば:
myObject<String>["SavedString"]
そのための構文はありますか?(もちろん、上記のコードをコンパイルすることはできません。)
私はそうは思いませんが、私が諦めて方法を使う前に:
public T this<T>[String index]
{
get{
//return stuff
}
}
クラスに型パラメータがありません。取得したいものに基づいて、別のタイプを返したいだけです。
例えば:
myObject<String>["SavedString"]
そのための構文はありますか?(もちろん、上記のコードをコンパイルすることはできません。)
いいえ、プロパティをC#でジェネリックにすることはできません。また、イベント、コンストラクター、変数、演算子、またはファイナライザーも使用できません。
基本的にジェネリック型とジェネリックメソッドがあり、それだけです。
プロパティを一般化することはできないため、取得する最も近い方法は、次のようにすることです。
public class SomeClass
{
public T GetValue<T>( string key )
{
// implement logic here
}
}