1. 程式人生 > >.Net--協變、逆變

.Net--協變、逆變

問題: .com 自己 接口 無效 圖片 () src 值類型

1、說明:協變和逆變只能出現在接口和委托中。

協變通過out來修飾,逆變通過in來修飾

對引用類型有效,對值類型無效

2、需要解決的問題:

技術分享圖片

3、解決方案:

IEnumerable<Parent> _parents = new List<Child>();

查看 IEnumerable的定義發現

技術分享圖片

在泛型參數的前面添加了out參數。

4、補充:

out協變:被修飾的參數只能出現在返回值的位置。

in逆變:被修飾的參數只能出現在參數的位置。

5、逆變的事例:

技術分享圖片

6、自己寫一個逆變和協變的事例:


技術分享圖片



.Net--協變、逆變