因此,現在我們在C#中的接口和代理上有了泛型協變和逆變,我只是好奇,如果給定Type
,您可以找出其泛型參數的協方差/對立。我開始嘗試編寫自己的實現,它將查看給定類型的所有方法,並查看返回類型和/或參數是否匹配泛型參數中的類型。問題是,即使我有這樣的:用我的邏輯有沒有辦法在C#4.0中確定接口/委託的差異?
public interface IFoo<T>
{
void DoSomething(T item);
}
,它看起來像它應該是逆變,但由於我們實際上並沒有具體說明:
public interface IFoo<in T>
{
void DoSomething(T item);
}
(IN參數)它並不是真正的逆變。這導致我的問題:有沒有辦法確定通用參數的方差?
你爲什麼需要這個? – 2010-05-27 04:20:39
@米奇我會讓你知道,當我知道了:)我只是出於好奇... – BFree 2010-05-27 04:26:14