我在 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/