一聚教程网:一个值得你收藏的教程网站

热门教程

asp.net c# 值类型与引用类型详细说明

时间:2022-06-25 05:00:36 编辑:袖梨 来源:一聚教程网

asp教程.net c# 值类型与引用类型详细说明
c# 中的类型有两种:值类型 (value type) 和引用类型 (reference type)。

值类型的变量直接包含它们的数据,而引用类型的变量存储对它们的数据的引用,后者称为对象。
对于引用类型,两个变量可能引用同一个对象,因此对一个变量的操作可能影响另一个变量所引用的对象。
对于值类型,每个变量都有它们自己的数据副本(除 ref 和 out 参数变量外),因此对一个变量的操作不可能影响另一个变量。
c# 的值类型进一步划分为简单类型 (simple type)、枚举类型 (enum type)、结构类型 (struct type) 和可以为 null 的类型 (nullable type)。
c# 的引用类型进一步划分为类类型 (class type)、接口类型 (interface type)、数组类型 (array type) 和委托类型 (delegate type)。
下表为 c# 类型系统的概述。

类别
 说明
 
值类型
 简单类型
 有符号整型:sbyte、short、int 和 long
 
无符号整型:byte、ushort、uint 和 ulong
 
unicode 字符型:char
 
ieee 浮点型:float 和 double
 
高精度小数型:decimal
 
布尔型:bool
 
枚举类型
 enum e {...} 形式的用户定义的类型
 
结构类型
 struct s {...} 形式的用户定义的类型
 
可以为 null 的类型
 其他所有具有 null 值的值类型的扩展
 
引用类型
 类类型
 其他所有类型的最终基类:object
 
unicode 字符串型:string
 
class c {...} 形式的用户定义的类型
 
接口类型
 interface i {...} 形式的用户定义的类型
 
数组类型
 一维和多维数组,例如 int[] 和 int[,]
 
委托类型
 例如,delegate int d(...) 形式的用户定义的类型
 

八种整型类型分别支持 8 位、16 位、32 位和 64 位整数值的有符号和无符号的形式。

两种浮点类型:float 和 double,分别使用 32 位单精度和 64 位双精度的 ieee 754 格式表示。

decimal 类型是 128 位的数据类型,适合用于财务计算和货币计算。

c# 的 bool 类型用于表示布尔值 — 为 true 或者 false 的值。

在 c# 中,字符和字符串处理使用 unicode 编码。char 类型表示一个 utf-16 编码单元,string 类型表示 utf-16 编码单元的序列。

热门栏目