泛型类的默认构造函数的语法是什么

本文关键字:是什么 语法 默认 泛型类 构造函数 | 更新日期: 2023-09-27 18:27:50

C#中是否禁止为泛型类实现默认构造函数?

如果没有,为什么下面的代码没有编译?(当我删除<T>时,它会编译)

那么,为泛型类定义默认构造函数的正确方法是什么?

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

编译时错误:错误1类、结构或接口成员声明中的无效标记"("

泛型类的默认构造函数的语法是什么

您没有在构造函数中提供类型参数。这就是你应该做的。

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

如果您需要Type作为属性:

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

如果需要注入类型为的实例

public class Cell<T>
{
    public T Thing { get; }
    public Cell(T thing)
    {
        Thing = thing;
    }
}