理解C#中的Covariant和Contravariant接口

理解C#中的Covariant和Contravariant接口

我在C#上阅读的教科书中遇到过这些,但我很难理解它们,可能是由于缺乏背景。

是否有一个很简洁的解释,说明它们是什么以及它们对那里有用的东西?

编辑以澄清:

协变界面:

interface IBibble<out T>..

逆变接口:

interface IBibble<in T>..


牧羊人nacy
浏览 374回答 2
2回答

智慧大石

这篇文章是我读过的关于这个主题的最好的文章简而言之,协方差/逆变/不变性处理自动类型转换(从基础到派生,反之亦然)。只有在对铸造对象执行的读/写操作方面遵守某些保证时,才可能进行这些类型转换。阅读帖子了解更多详情。
打开App,查看更多内容
随时随地看视频慕课网APP