C# 的装箱与拆箱的问题
来源:互联网 发布:淘宝优惠卷名称怎么写 编辑:程序博客网 时间:2024/06/05 01:11
1.NET将整个系统的的类型分成两个大类:Value Type(值类型)和 Reference Type(引用类型)
值类型:原类型(Sbyte,Byte,Short,Ushort,Int,Uint,Long,ULong,Char,Float,Double,Bool,Decimal),枚举(Enum),结构(Struct)
引用类型:类(Class),数组,接口(Interface), 委托(Delegate),字符串等
装箱就是将"值类型"隐式转换成“引用类型”。
拆箱就是将"引用类型"显式或隐式转换成“值类型”。
装箱过程:对值类型在堆中分配一个对象实例,并将该值复制到新的对象中,按三步进行。
1.新分配托管堆内存(大小为值类型实例大小加上一个方法表指针和一个SyncBlockIndex).
2.将值类型的实例字段拷贝到新分配的内存中。
3.返回托管堆中新分配对象的地址,这个地址就是一个指向对象的引用了。
L的理解就是在堆中分配一个新的对象(也可以说值的类型的一个副本,装箱后值类型与引用类型并不一样,而是两个相关独立的对象),记录值类型的值。
拆箱过程:
例如:
int i = 123;
object obj = i;//Boxing
if( obj is int )
int j = (int) obj;//Unboxing
- C# 的装箱与拆箱的问题
- c# 的拆箱与装箱
- C#的装箱与拆箱
- C#的装箱与拆箱
- C#的装箱与拆箱
- C#的装箱与拆箱
- 关于装箱与拆箱的问题(-)
- 装箱与拆箱的性能问题
- c# 装箱与拆箱问题
- C#的装箱拆箱
- C#的装箱拆箱
- C#的装箱与拆箱与基本类型
- 关于Visual C#装箱与拆箱的研究
- 关于Visual C#装箱与拆箱的研究
- 关于Visual C#装箱与拆箱的研究
- 关于C#装箱与拆箱的研究
- 关于Visual C#装箱与拆箱的研究
- 关于Visual C#装箱与拆箱的研究
- Delphi判断一个文件是不是JPG图片
- 跟踪法测试(灰盒测试):跟踪程序的运行过程,特别是输入数据的流转过程
- 解数独游戏的程序构思想法
- Power designer 15生成sql server 2005/2008列注释
- powerdesigner经常遇到的一些问题及如何设置
- C# 的装箱与拆箱的问题
- 用户-内核交互-sysctl
- 使用excel作为数据源,向数据库写入数据
- 如何启用或关闭数据库的归档(archivelog)模式
- 正则表达式30分钟入门教程
- 正则表达式 基础
- 关于装箱与拆箱的问题(-)
- 在非归档模式下如何更改数据文件位置
- Java调用jacob出错问题:java.library.path解决