2012-03-14 90 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;} 
} 
相关问题