2013-03-18 87 views
1

我觉得这是很常见的误解,我最终会在两者之间感到困惑。 当我们说CLR功能(.NET功能)或C#功能,他们是否相同或他们不同.NET功能和C#功能有什么区别? (请用例子)

编辑: 我觉得大多数人都误解了我的问题。我不是问C#和.NET之间的核心区别,而是对功能明智的分类有点好奇。像垃圾回收是CLR功能还是匿名类型是语言功能,等等等等

+0

可能重复的[C#和.Net之间有什么不同?](http://stackoverflow.com/questions/2724864/what-is-the-different -c-sharp-and-net) – 2013-03-20 07:42:34

+0

我觉得大部分人都误解了我的问题。我不是问C#和.NET之间的核心区别,而是对功能明智的分类有点好奇。像垃圾回收是CLR功能还是匿名类型是语言功能,等等等等 – Misam 2013-03-20 12:49:13

+0

我看到,您的编辑有助于澄清这一点。我不能撤销我的重复投票,但这并没有多大帮助,因为大多数近距离投票都是“不具有建设性”,可能是因为“扩大讨论”的危险。 – 2013-03-20 13:42:10

回答

7

语言功能,库功能和运行时功能之间的值得非常清楚。

一些例子:

  • 空-聚结??操作者,局部类和lambda表达式是完全语言特性
  • 垃圾收集是非常纯的运行特征;该语言通过终结器与其进行交互,但这些全都是
  • 泛型是语言和运行时功能的混合体 - 尽管CLR在F#暴露前显着支持泛型变异。当然,图书馆使用泛型。
  • 可空类型是所有三种类型的混合体:CLR需要知道它们的装箱目的(以及对泛型的结构约束),类型本身在库中定义,并且C#语言在各种类型中支持它们方式(例如使用?类型后缀)
+0

谢谢乔恩。这帮助并消除了疑问 – Misam 2013-03-18 09:49:52

+0

@Misam:你对这个答案的接受是否表明你还在寻找更多的细节? – 2013-03-20 17:10:53

+0

是的,一些更多的功能分类会很好,这将增加我的知识。 – Misam 2013-03-21 06:43:43

相关问题