.net - .NET 基本类型有什么特别之处?

标签 .net primitive-types ecma

我在 msdn 上阅读有关基本类型的内容, 但后来我遇到了 this answer关于原始类型的 StackOverflow 问题。两者似乎略有不同。

根据 msdn 文档,它陈述了原始类型的一些优点:

  • 原始类型允许文字值。
  • 原始类型可以声明为常量值。
  • 由所有原始类型组成的表达式的操作数可以编译成常量表达式。

但是,不同的部分是 StackOverflow 声明 System.String 不是原始类型。这是有道理的:typeof(System.String).IsPrimitive 产生 false。而且,StackOverflow 的答案指向 CLI 规范:ECMA 335(链接已损坏)作为其引用来源。这使我相信 msdn 文档并不完全准确。如果是这样,那么是什么让基本类型如此特别?

最佳答案

MSDN 链接指向一个关于 Visual Basic.NET 2003 的古老页面。在 current specification 中字符串已从基本类型列表中删除。 Visual Basic Language Reference没有提到 String 作为原始类型,即使对于 VB.NET 2003 也是如此。

我怀疑这是 2003 年的文档错误

关于.net - .NET 基本类型有什么特别之处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30760757/

相关文章:

java - 是否将int初始化为0?

javascript - `player.animate( [ {transform: "旋转(10) "` ?

javascript - 如果我可以通过这个调用父方法那么为什么要在 ES6 中使用 super 呢?

Javascript 函数内部的 this 关键字

c# - 从未绑定(bind)列中的 DataGridViewComboBoxCell 获取选定索引和选定项

c# - Mongo抛出 "Element name '名称'无效'异常

ios - Swift 是否支持隐式转换?

c# - 如何根据类中属性的类型动态创建 C# 泛型字典?

c# - 如何在C#中使用开源库?

opengl - GLSL 着色器 : blending, 图元特定行为,并丢弃顶点