C#-类型和变量

类型和变量

 C# 有两种类型:值类型引用类型

值类型的变量直接包含数据,而引用类型的变量则存储对数据(称为“对象”)的引用。 对于引用类型,两个变量可以引用同一对象;因此,对一个变量执行的运算可能会影响另一个变量引用的对象。 借助值类型,每个变量都有自己的数据副本;因此,对一个变量执行的运算不会影响另一个变量(ref 和 out 参数变量除外)。C# 值类型又细分为简单类型、枚举类型、结构类型和可以为 null 的值类型。 C# 引用类型又细分为类类型、接口类型、数组类型和委托类型。

值类型

  简单类型

  • 有符号的整型:sbyte、short、int、long
  • 无符号的整型:byte、ushort、uint、ulong
  • Unicode 字符:char
  • IEEE 二进制浮点:float、double
  • 高精度十进制浮点数:decimal
  • 布尔:bool

  枚举类型

格式为 enum E {...} 的用户定义类型

结构类型

格式为 struct S {...} 的用户定义类型

可以为 null 的值类型

值为 null 的其他所有值类型的扩展

  元组值类型

格式为 (T1, T2, ...) 的用户定义类型

引用类型

类类型

  • 其他所有类型的最终基类:object
  • Unicode 字符串:string
  • 格式为 class C {...} 的用户定义类型

接口类型

格式为 interface I {...} 的用户定义类型

数组类型

一维和多维,例如 int[] 和 int[,]

 委托类型

格式为 delegate int D(...) 的用户定义类型

相关推荐