2012-03-14 133 views
63

在C#中禁止爲泛型類實現默認構造函數嗎?通用類的默認構造函數的語法是什麼?

如果沒有,爲什麼下面的代碼不能編譯? (當我刪除<T>它編譯雖然)

然後定義一個泛型類的默認構造函數的正確方法是什麼?

public class Cell<T> 
{ 
    public Cell<T>() 
    { 
    } 
} 

編譯錯誤:錯誤1個無效令牌「(」類,結構或接口成員聲明

回答

109

你不提供構造函數的類型參數這是你應該如何做

public class Cell<T> 
{ 
    public Cell() 
    { 
    } 
} 
+1

+1,就是這樣:) – 2012-03-14 11:34:35

3

如果你需要的類型的屬性:

public class Cell<T> 
{ 
    public Cell() 
    { 
     TheType = typeof(T); 
    } 

    public Type TheType { get;} 
} 
相關問題