class test <T> where T : class
{
public void Write<T>()
{
Console.Write(typeof(T).FullName);
}
}
在上面的類中,可以傳入類的字符串(test<string> Test = new test<string>
),然後int爲方法?如果是這樣,輸出是什麼?如果不是,這會導致什麼問題?我實際上沒有嘗試過,儘管我經常使用泛型(在我自己的類中)和泛型集合。通用類和通用方法
我寫/看泛型類的方式如下:
class <T> where T : class
{
public T Write()
{
Console.Write(T.ToString());
}
}
如果你看看方法,「T」實際上是一個方法參數。它與該類的參數具有相同的名稱,因此會生成警告。但是,這裏並不是非法的。 (雖然我會建議將它重命名爲U,就像你建議的那樣) – 2009-05-05 22:54:52
@Scott,我實際上認爲C#會在那裏發出一個錯誤而不是警告。奇怪的 :( – JaredPar 2009-05-05 22:59:00