码迷,mamicode.com
首页 > Windows程序 > 详细

c#基础值类和引用类型

时间:2017-04-07 13:27:10      阅读:238      评论:0      收藏:0      [点我收藏+]

标签:类型转换   继承   值类型   没有   span   struct   class   lin   read   

//值类型:int double char decimal bool enum struct
//引用类型:string 数组 自定义类 集合 object 接口

 //值传递和引用传递
            int n1 = 10;
            int n2 = n1;
            n2 = 20;
            Console.WriteLine(n1);//10
            Console.WriteLine(n2);//20
            Console.ReadKey();

如果是引用类型,是最后一个

 

 Person p1 = new Person(); //这是引用类型
            p1.Name = "张三";
            Person p2 = p1;
            p2.Name = "李四";
          //  p1.Name = "1223";
            Console.WriteLine(p2.Name);//反正是最后一个1233
            Console.WriteLine(p1.Name);//反正是最后一个
            Console.ReadKey();//李四
//如果这里没有 p1.Name = "1223"; 这是李四李四

 

装箱、拆箱
装箱:就是将值类型转换为引用类型。
拆箱:将引用类型转换为值类型。
看两种类型是否发生了装箱或者拆箱,要看,这两种类型是否存在继承关系

避免拆箱和装箱

 

//这个地方没有发生任意类型的装箱或者拆箱
//string str = "123";
//int n = Convert.ToInt32(str);//看两种类型是否发生了装箱或者拆箱,要看,这两种类型是否存在继承关系

 


//int n = 10;
//object o = n;//装箱 值类型=>引用类型n =>o
//int nn = (int)o;//拆箱

 

c#基础值类和引用类型

标签:类型转换   继承   值类型   没有   span   struct   class   lin   read   

原文地址:http://www.cnblogs.com/liuweiqiang11188/p/6677651.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!