【发布时间】:2012-08-23 10:21:41
【问题描述】:
为什么这不可能? 使用构造函数参数实例化“DerivedClass”时出现以下编译器错误:
'GenericParameterizedConstructor.DerivedClass' 不包含带 1 个参数的构造函数
但是调用一个非常相似的方法是可行的。
为什么?
class Program
{
static void Main(string[] args)
{
// This one produces a compile error
// DerivedClass cls = new DerivedClass("Some value");
// This one works;
DerivedClass cls2 = new DerivedClass();
cls2.SomeMethod("Some value");
}
}
public class BaseClass<T>
{
internal T Value;
public BaseClass()
{
}
public BaseClass(T value)
{
this.Value = value;
}
public void SomeMethod(T value)
{
this.Value = value;
}
}
public class DerivedClass : BaseClass<String>
{
}
【问题讨论】:
标签: c# generics parameters constructor derived-class