【发布时间】:2010-06-15 09:43:04
【问题描述】:
对不起,奇怪的标题。我真的不知道如何更好地表达它......
我收到以下 sn-p 错误。我到处使用 Dummy 类。编译器不理解我在 DummyImplBase 上添加的约束吗?如果我直接使用 Dummy 而不是将其设置为约束,这是一个编译器错误吗?
错误 1“ConsoleApplication53.DummyImplBase”未实现接口成员“ConsoleApplication53.IRequired.RequiredMethod()”。 “ConsoleApplication53.RequiredBase.RequiredMethod()”无法实现“ConsoleApplication53.IRequired.RequiredMethod()”,因为它没有匹配的返回类型“ConsoleApplication53.Dummy”。 C:\Documents and Settings\simen\My Documents\Visual Studio 2008\Projects\ConsoleApplication53\ConsoleApplication53\Program.cs 37 27 ConsoleApplication53
public class Dummy
{
}
public interface IRequired<T>
{
T RequiredMethod();
}
public interface IDummyRequired : IRequired<Dummy>
{
void OtherMethod();
}
public class RequiredBase<T> : IRequired<T>
{
public T RequiredMethod()
{
return default(T);
}
}
public abstract class DummyImplBase<T> : RequiredBase<T>, IDummyRequired
where T: Dummy
{
public void OtherMethod()
{
}
}
【问题讨论】:
标签: generics inheritance c#-3.0 interface