X? is a shortcut to System.Nullable<X> In order to use System.Nullable, type X must be a non-nullable type, which is not guaranteed when declared as
interface IB<X> : IA<X?> { } but when declared as interface IB<X> : IA<X?> where X : struct { } it should compile. // Ryan On Dec 6, 2007 12:29 PM, Mark Nicholls <[EMAIL PROTECTED]> wrote: > Sorry to bombard with generic questions... > > I've just come across > > interface IA<X> > { > ... > } > > interface IB<X> : IA<X?> // yes the '?' is not a typo > { > } > > it does compile...it gives > > The type 'A' must be a non-nullable value type in order to use it as > parameter 'T' in the generic type or method 'System.Nullable<T>' > > i.e. it understands what the T is....but I don't. > > =================================== > This list is hosted by DevelopMentor(R) http://www.develop.com > > View archives and manage your subscription(s) at http://discuss.develop.com > =================================== This list is hosted by DevelopMentorĀ® http://www.develop.com View archives and manage your subscription(s) at http://discuss.develop.com