c# - C#(甚至 CLR)中有多少内置值类型

标签 c# .net clr

我们都知道 C# 中存在的 15 种常见值类型:

sbyte, short, int, long, byte, ushort, uint, ulong, char, float, double, decimal, bool, enum, struct

如果您单独计算 nullable 对应项,则它们为 30。

我记得其中一本 MS 认证书籍提到“CLR 中有超过 400 种内置 类型”,尽管我在网上找不到任何引用资料,也没有找到其他人提到它.

所以我很想知道 - 仅此而已吗?如果没有,您如何找到其余部分并在任何项目中使用过它们?

最佳答案

我怀疑它的意思是“在 .NET 框架中”而不是“在 CLR 中”。 (C# 定义相对较少。注意 enumstruct 本身不是类型。CLR 本身知道的更少——例如,它没有对 decimal 的任何特殊支持。)

您的列表不包括 DateTime 之类的内容, TimeSpan , Guid , List<T>.Enumerator 等等。基本上你可以加载一堆带有反射的程序集来找到更多。我怀疑认证指南真的意味着框架中的值类型集。

关于c# - C#(甚至 CLR)中有多少内置值类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6831957/

相关文章:

c# - 如何使用.Net部署sqlite

.net - .NET CLR是否可以自动内联属性?

c# - 带有空检查的 If 语句

c# - MSIL : Comparing efficiency of simple algorithms

.net - .NET 中类加载器的等效项

c# - 如何在LINQ中选择几个特定的​​元素?

c# - Lambda 表达式的非常简单的解释

c# - 有没有办法在 .net 中进行 WebPush 有效负载加密?

c# - 通过验证创建有效的日期时间对象

c# - 从 C# (VS2013) 调用 C++ 函数时隐藏的调试信息