原始数据类型如何具有功能?

时间:2012-02-09 09:21:36

标签: c# types

  

可能重复:
  Why do primitive types in C# have their own operations?

我正在学习C#,我发现以下代码令人困惑:
int.Parse();
原始数据类型如何具有函数?

5 个答案:

答案 0 :(得分:2)

原始数据类型是结构。可以找到关于“原生”结构的差异的一个很好的解释here

答案 1 :(得分:1)

.net框架中的原始类型为structure

答案 2 :(得分:1)

原始类型实际上是C#中的struct个对象。

在int的情况下,它由Int32结构表示。实际上,您可以通过将int字词悬停在

上来轻松查看

enter image description here

Int32 structure

答案 3 :(得分:0)

在C#中,诸如int之类的类型是混合的 - 它们都是包含值的原始值类型,但它们也是结构 - System.Int32 - 包含方法,两个实例方法(可以调用{{ 1}},甚至是myInt.ToString())和静态方法(5.ToString(),它是int.Parse()的简写。

答案 4 :(得分:-1)

根据.net规范数据类型分为基于堆栈或基于堆的变量。这种区别在于如何以及在何处存储变量。基于堆栈的变量按值存储。

现在专注于你的问题,int如何有功能。如果你遍历每个整数数据类型,如int,short,decimal,string,double,long ..都有一个对应的基于类的类。

.net编译器在内部将整数类型(基元)转换为基于堆的表示。

所以int变成Int32    short变成int16

等等。

BTW,整数类型,结构,枚举是基于堆栈的变量,它们直接存储在存储器中而不是作为参考。