从父类函数返回子类类型

时间:2016-07-29 08:00:31

标签: c#

我希望有一个父类包含一个可链接的函数(一个返回this的函数),它应该在每个子类中返回一个子类类型的对象,而不是父类:

class ParentClass<T> where T : ParentClass<T> {
    public T ChainableFn()
    {
        ...
        return (T)this;
    }
}

class ChildClass : ParentClass<ChildClass> {

}



ChildClass child = new ChildClass().ChainableFn().ChainableFn().ChainableFn();

这不起作用,因为ParentClass<T>无法转换为T

我错过了什么?

0 个答案:

没有答案