加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C#4.0中协方差和逆变的良好,真实用例的例子?

发布时间:2020-12-15 04:17:48 所属栏目:百科 来源:网络整理
导读:在C#4.0问世之前,我对协方差和逆变感到非常兴奋.它迎合了我对理论正确性的喜爱! 然而,既然已经出局了,我又回到了写正常,日常,无聊的代码,我开始怀疑:我曾经使用它吗?我注意到我并没有有意识地使用它.我之后定义的接口或代理都没有从中受益. 只有一个案例
在C#4.0问世之前,我对协方差和逆变感到非常兴奋.它迎合了我对理论正确性的喜爱!

然而,既然已经出局了,我又回到了写正常,日常,无聊的代码,我开始怀疑:我曾经使用它吗?我注意到我并没有有意识地使用它.我之后定义的接口或代理都没有从中受益.

只有一个案例我后来发现我不知不觉地使用了协方差,但它非常微妙,我也没有注意到它.想象X是一个基类,Y是它的后代:

if (enumerableOfYs.Contains(variableOfTypeX))

有没有任何有趣或令人兴奋的例子,你们中的任何一个人在现实生活中,非人为的用例中使用了协方差或逆变,它真的通过非常“正确”来挽救了这一天?

解决方法

我在实际的客户编写程序(而不是编写编译器测试用例或文章或其他任何东西)中遇到的唯一“真实世界”方差的使用是我现在可以传递IEnumerable< TypeParameterDefinedInSource>一个期望IEnumerable< TypeSymbol>的方法当我用C#编写代码分析工具时.

这真的不是一种“拯救一天”的功能.它更像是“它按照我期望的方式工作”功能.

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读