【发布时间】:2014-03-05 00:56:23
【问题描述】:
我正在尝试做类似的事情:
public interface IView<T> : T where T : class
{
T SomeParam {get;}
}
这样我以后可以做
public class SomeView : IView<ISomeView>
{
}
是否可以通过这种方式使用泛型指定继承,或者我是否必须在定义类时明确指定两个接口并执行以下操作:
public interface IView<T>
{
T SomeParam {get;}
}
public class SomeView : IView<ISomeView>, ISomeView
{
}
【问题讨论】:
-
看起来有点像 Eric Lippert 在他的帖子 Curiouser and Curiouser 中所说的。请注意,他确实指出它仅在 C# 中起作用。
-
删除接口声明中的
: T。 -
为什么? : T 是问题的全部重点......
标签: c# generics inheritance