C#引用类型和值类型的介绍与实例

时间:2021-05-20

复制代码 代码如下:
static void Main(string[] args)
{
//值类型
bool b1 = true; //栈中划一块内存,名字为b1,类型为bool,值为true
Console.WriteLine("b1="+b1); // b1 =true

bool b2 = b1; //栈中划一块内存,名字为b2,类型为bool,和b1的值一样为ture
Console.WriteLine("b2="+b2); // b2 = false

b1 = false; //将栈中b1的值改为false
Console.WriteLine("b1=" + b1); // b1 = false
Console.WriteLine("b2=" + b2); // b2 = true
Console.ReadKey();

//引用类型
int[] a1 = { 1, 2, 3 }; //栈中划一块内存,名字为a1,类型为int[],值为一个地址
//堆中划连续3个int空间,将首地址赋给栈的值
Console.WriteLine("a1[1]=" + a1[1]);

int[] a2 = a1; //栈中划一块内存,名字为a1,类型为int[],值的地址为数组a1的地址
Console.WriteLine("a2[1]=" + a2[1]);

a1[1] = 9; //根据地址修改,堆中的数据
Console.WriteLine("a1[1]=" + a1[1]);
Console.WriteLine("a2[1]=" + a2[1]);
Console.ReadKey();

}

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章