游戏开发的NET中,数据类型划分为值类型和引用(不等同于C++的指针)类型,与此对应,内存分配被分红了两种体例,一为栈,二为堆,重视:是托管堆。值类型只会在栈平分配。引用类型分配内存与托管堆。托管堆对应于垃圾收受接管。
在C#中拆箱和拆箱是一个笼统的概念.
* 拆箱是将值类型的数据转化引用类型
* 拆箱是将颠末拆箱后引用类型转换为值类型
游戏开发的拆箱和拆箱的意义:
操纵拆箱和拆箱功用,可通过容许值类型的任何值与Object 类型的值彼此转换,将值类型与引用类型链接起来.
第一种办法:挪用一个含类型为Object的参数的办法,该Object可撑持肆意为型,以便通用。当你需要将一个值类型(如Int32)传进时,需要拆箱。
第二种用法:一个非泛型的容器,同样是为了包管通用,而将元素类型定义为Object。于是,要将值类型数据加进容器时,需要拆箱。
1) 拆箱
那是一个拆箱的过程,是将值类型转换为引用类型的过程。
int i= 123;
object o= i;
Console.WriteLine (“对象的值 = {0}", o);
2)拆箱
在游戏开发中的上一步的根底上,我们在将引用类型转换为值类型。
int i=10;
object o=i;
int j=(int)o;
Console.WriteLine("j={0}",j);
0