2011-04-29 28 views
0

我不這麼認爲,但在此之前我放棄了和使用方法:有什麼辦法在索引器聲明中使用類型參數嗎?

public T this<T>[String index] 
{ 
    get{ 
     //return stuff 
    } 
} 

我沒有在類的類型參數。 我只想根據我想要的返回不同的類型。

例如:

myObject<String>["SavedString"] 

是否有一個語法? (我當然不能編譯上面的任何代碼)。

回答

3

不,在C#中屬性不能是通用的。事件,構造函數,變量,運算符或終結器也不可以。

基本上有泛型類型和泛型方法,就是這樣。

1

由於性能不能通用,你會得到最接近的辦法,就是像這樣做:

public class SomeClass 
{ 
    public T GetValue<T>(string key) 
    { 
     // implement logic here 
    } 
} 
相關問題