Create relationship between two type parameters

image_pdfimage_print
   
 

using System;

class A {
}

class B : A {
}

// Here, V must inherit T.
class Gen<T, V> where V : T {
}

class Test {
  public static void Main() {

    // This declaration is OK because B inherits A.
    Gen<A, B> x = new Gen<A, B>();

    // This declaration is in error because
    // A does not inherit B.
//    Gen<B, A> y = new Gen<B, A>();

  }
}
           
         
     


This entry was posted in Generics. Bookmark the permalink.