Wednesday, December 24, 2008

Covariance/Contravariace generics in C# 4.0

One of the things that we’ll have in C# 4.0 is covariance/contravariace. 
Co-variance means that a generic type e.g. an IEnumerable of type string can be used as a generic of any supertype e.g. IEnumerable of type object.
Contra variance means that a generic type e.g. an IEnumerable of type string can be used as a generic of any subtype e.g.IEnumerable of type object.