C# 装箱和拆箱
装箱 是指将值类型转换为引用类型,如下:
int a = 10;//a的类型是结构体system.Int32,结构体是值类型
Object o = a;//o的类型是类system.Object, 类是引用类型
拆箱 是指将装箱的引用类型转换为值类型。
int b = (int)o;//将o强转为值类型
在C#中
值类型包括:结构体(数值类型,bool型,用户定义的结构体),枚举,可空类型。
引用类型包括:数组,用户定义的类、接口、委托,例如object,字符串等。
装箱 是指将值类型转换为引用类型,如下:
int a = 10;//a的类型是结构体system.Int32,结构体是值类型
Object o = a;//o的类型是类system.Object, 类是引用类型
拆箱 是指将装箱的引用类型转换为值类型。
int b = (int)o;//将o强转为值类型
在C#中
值类型包括:结构体(数值类型,bool型,用户定义的结构体),枚举,可空类型。
引用类型包括:数组,用户定义的类、接口、委托,例如object,字符串等。