简体   繁体   中英

generic base class where T is other generic base class

I have an abstract generic class:

public abstract class SomeBaseClass<U,V>
{
}

I want to create other generic class:

public abstract class SomeOtherBaseClass<T1, T2> where T1 : SomeBaseClass<U,V>
{
    private readonly T1 _someBaseClass;

    public SomeOtherBaseClass(T1 someBaseClass)
    {
        _someBaseClass = someBaseClass;
    }
}

How can i do this?

public abstract class SomeOtherBaseClass<T1, T2, U, V>
    where T1 : SomeBaseClass<U, V>

This may give you what you need:

public abstract class SomeOtherBaseClass<U, V, T2> 
{
    private readonly SomeBaseClass<U, V> _someBaseClass;

    public SomeOtherBaseClass(SomeBaseClass<U, V> someBaseClass)
    {
        _someBaseClass = someBaseClass;
    }
}
public abstract class SomeOtherBaseClass<T1, T2> where T1 : SomeBaseClass<T1,T2>

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM