当前位置: 首页 > 编程语言 > C#

“原始类型”与“内置值类型”分享

时间:2023-04-10 15:53:34 C#

“原始类型”与“内置值类型”最近在C#中使用Array.SetValue(Int32)时遇到异常方法。例外情况是:无法从源类型扩展到目标类型,因为源类型不是基本类型或无法完成转换。提到“原始”这个词让我有点吃惊,因为我认为有一种趋势是将这些类型称为内置类型,而术语“原始类型”也是一个非正式术语。“原始”类型和“内置值类型”有什么区别?我没有在C#语言规范中找到基本类型的定义。C#语言规范中未定义基元类型。它们在.NET本身中定义,原始类型的最佳参考是直接在MSDN上查看Type.IsPrimitive。具体来说,“备注”部分列出了可用的原始类型。Herewehaveafullreference,这些是CLI规范(第I.8.2.2节)中定义的原始类型:可能是字符串。另一方面,值类型可能是也可能不是原始类型。除了CLI规范中定义的值外,.NETFramework还有许多“内置”值类型,但它们不属于基元。一个很好的例子是DateTime,它是.NETFramework提供的结构,根据该定义可以将其视为“内置值类型”。您可以在此处阅读有关值类型的更多信息(当然也包括内置类型)。以上就是C#学习教程分享的全部内容:《原始类型》和《内置值类型》。如果对你有用,需要进一步了解C#学习教程,希望大家多多关注。本文收集自网络,不代表立场,如涉及侵权,请点击右边联系管理员删除。如需转载请注明出处: