您的位置:首页 > 编程语言 > C#

c#装箱,拆箱

2008-05-21 19:34 288 查看
1.装箱用于在垃圾回收堆中存储值类型,装箱是值类型到object类型或到此值类型所实现的任何接口类型的隐式转换。对值类型装箱会在堆中分配一个对象实例,并将该值复制到新的对象中。

如:

int i=123;

object o=i;

此语句的结果是在堆上创建对象O,引用int 类型的值,该值是赋给变量i的值类型的一个副本(i,o是有差异的),

class TestBoxing
{
static void Main()
{
int i = 123;
object o = i;  // implicit boxing

i = 456;  // change the contents of i

System.Console.WriteLine("The value-type value = {0}", i);
System.Console.WriteLine("The object-type value = {0}", o);
}
}

输出结果:456

123

[code]取消装箱:


取消装箱是从 object 类型到值类型或从接口类型到实现该接口的值类型的显式转换。取消装箱操作包括:
检查对象实例,以确保它是给定值类型的装箱值。

将该值从实例复制到值类型变量中。

[/code]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: