当前位置:  开发笔记 > 编程语言 > 正文

C#和CLR存在混淆,哪些功能值得严格描述为C#功能?

如何解决《C#和CLR存在混淆,哪些功能值得严格描述为C#功能?》经验,为你挑选了1个好方法。

我必须写几句关于C#的文章,一般都是小菜一碟?没有!

我搜索了各种互联网资源和书籍,我得到的是有点头疼.例如垃圾收集器,一些消息来源说这是C#功能,其他CLR获得此功能,C#以及所有其他.NET语言默认获得它.当然,我对CLR的投票,但还有很多其他事情会带来混乱,比如避免明确的代码转换.也许我有糟糕的书籍和资源...所以也许有人会建议一些地方以清晰的方式讲述C#

第二件事是C#语法的起源,也是很少的选择,没有什么是明确的,其他语言组合是彼此的作者.C,c ++,Java,没关系,但VB6和Delphi,我有疑问.而且这些语言的特征来源与c#混合在一起,但实际上不清楚它是否是C#或CLR功能

MTH



1> Marc Gravell..:

GC由CLR提供

C#是语言规范所声明的一切,而不是更多.

一些更有趣的东西实际上是C#特征:

迭代器块[yield return]

匿名方法/闭包/ lambdas [语法,不要与表达式树混淆]

但是任何与您键入的代码相关但不是由CLR或框架直接提供的代码都是语言功能.其他语言也可以实现它们,当然......

使用[try/finally/Dispose]

锁[Monitor.Enter/try/finally/Monitor.Exit]

foreach [GetEnumerator()/ while/[Dispose]]

扩展方法解析

查询语法["where pred"到.Where(x => pred)等]

(这些只是当然的几个例子;而且 - 其他语言也可以自由提供这些功能!)

推荐阅读
农大军乐团_697
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有