我正在寻找一种有效的方法来做这样的伪代码。
public interface INormalizedObject{
void someMethodThatHappensToNormalizedObjects();
T NormalizeObject(T obj) where T : derives from INormalizedObject;
}
具体来说,如何在接口上放置一个类型约束,方法NormalizeObject返回一个类型为base INormalizedObject的对象?
答案 0 :(得分:7)
如果您希望xclip //mine was version 1.3
表示"实现此接口的类型",您可以使接口通用:
T
然后实施它:
public interface INormalizedObject<T>
where T : INormalizedObject<T>
{
T NormalizeObject(T obj);
}
但是你实际似乎要求的只是这个:
public class Foo : INormalizedObject<Foo>
{
public Foo NormalizeObject(Foo obj)
{
}
}
因为您的所有代码都应该知道。
答案 1 :(得分:0)
我不认为你可以在这里使用这个词,因为它需要你的方法是静态的。 你能试试吗
WndProc