C#中的类型推断
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了C#中的类型推断,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1355字,纯文字阅读大概需要2分钟。
内容图文
![C#中的类型推断](/upload/InfoBanner/zyjiaocheng/758/c8b8e983836544cebbf975183f980044.jpg)
我知道msdn应该是第一个去的地方,它将在我得到这里的独家新闻之后.作为技术规范的一部分,msdn不会真正提供的是我现在要问的问题:
>这个主题在日常开发过程中的用途如何?
>它在clr中的任何形状或形式与匿名类型之间是否存在相关性?
>如果没有它可以做什么呢?
>哪些.net功能取决于主题,如果不作为框架的一部分就不可能存在?
为了记录这个问题的细节,如果使用lambdas和类型推断调用该方法,那么知道(在伪代码中)编译器如何实际确定所需类型将是非常有趣的.
我期待看到关于如何定位该类型的编译器逻辑流程.
解决方法:
类型推断发生在C#的许多地方,至少如下:
> var关键字,它告诉编译器根据初始化变量来推断(推导)变量的正确类型
>只要可以从参数中推导出类型参数,就可以将类型参数从通用方法调用中删除
>能够从lambda表达式参数中省略类型,只要它们可以推导出来
并回答你的问题:
1)它节省了大量的输入,特别是在使用所谓的“LINQ方法”时.比较例如
List<string> myList = new List<string>();
// ...
IEnumerable<string> result = myList.Where<string>((string s) => s.Length > 0)
.Select<string, string>((string s) => s.ToLower());
与
var myList = new List<string>();
// ...
var result = myList.Where(s => s.Length > 0).Select(s => s.ToLower());
2)我不知道“关联”是什么意思,但如果没有var关键字,你就不能以类型安全的方式引用匿名类型(你总是可以使用对象或动态),这使得它很漂亮使用匿名类型时很重要.
3)我无法想到的任何事情.这只是一个方便的功能.当然,它的缺席会使上述匿名类型不那么有用,但它们大多也是一个便利功能.
4)我认为3)也回答这个问题.
内容总结
以上是互联网集市为您收集整理的C#中的类型推断全部内容,希望文章能够帮你解决C#中的类型推断所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。