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

C# 值类型与引用类型的异同

时间:2017-04-08 16:17:50      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:tee   引用类型   diff   引用   ble   ons   ima   any   变量声明   

int,bool,decimal等为值类型

List,Stream等为引用类型

 

用等号设置一个值类型变量等于另一个变量时,会完成复制,之后这两个变量相互之间没有任何影响;

对引用使用等号时,这两个引用就会指向同一个对象

 

对于值类型和引用类型,变量声明和复制都是一样的。

int howMany = 25;

bool Scary = true;

List<double> temperatures = new List<double>();

int和bool为值类型,List为引用类型,他们都以相同的方式初始化

 

但一旦开始赋值就不同了。

 

值类型的赋值:

int fifteenMore = howMany;

fifteenMore += 15;

Console.WriteLine("howMany has {0},fifteenMore has {1}",howMany,fifteenMore);

输出:howMany has 25,fifteenMore has 40

 

引用类型赋值:

temperatures.Add(56.5D);

temperatures.Add(27.4D);

List<double> differentList = temperatures;

differentList.Add(62.9D);

Cosole.WriteLine("temperature has {0},differentlist has {1}",temperature.Count(),differentList.Count());

输出:temperatures has 3,differentList has 3

C# 值类型与引用类型的异同

标签:tee   引用类型   diff   引用   ble   ons   ima   any   变量声明   

原文地址:http://www.cnblogs.com/fws94/p/6681834.html

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