|
|
51CTO旗下网站
|
|
移动端

2.4.1 值类型

《C# 6.0本质论(第5版)》第2章数据类型,本章将探讨这些数据类型,更深入地研究字符串类型,并引入数组的概念。本节为大家介绍值类型。

作者:周靖/庞燕 译来源:人民邮电出版社|2017-07-21 16:34

2.4 类型的分类

所有类型都可以归为值类型或引用类型。它们的区别在于复制方式:值类型的数据总是进行值复制,而引用类型的数据总是进行引用复制。

2.4.1 值类型

除了string,本书迄今为止讲到的所有预定义类型都是值类型。值类型变量直接包含值。换言之,变量引用的位置就是值在内存中实际存储的位置。因此,将第一个变量的值赋给第二个变量会在新变量的位置创建原始变量的值的一个内存副本。相同值类型的第二个变量不能引用和第一个变量相同的内存位置。所以,更改第一个变量的值不会影响第二个变量的值。图2-1对此进行了演示。图中number1引用内存中的特定的位置,该位置包含值42。将number1的值赋给number2之后,两个变量都包含值42。但是,修改其中任何一个变量的值都不会影响另一个值。

类似地,将值类型的实例传给方法,如Console.WriteLine(),也会生成一个内存副本。在方法内部对参数值进行的任何修改都不会影响调用函数中的原始值。由于值类型需要创建内存副本,因此定义时不要让它们占用太多内存(通常应该小于16字节)。

喜欢的朋友可以添加我们的微信账号:

51CTO读书频道二维码


51CTO读书频道活动讨论群:342347198

【责任编辑:book TEL:(010)68476606】

回书目   上一节   下一节
点赞 0
分享:
大家都在看
猜你喜欢

读 书 +更多

开源osCommerce 轻松架设专业电子商务平台

osCommerce是一款免费的、开放源代码的专业电子商务解决方案。本书以通俗易懂的语言向读者展示了该软件强大的功能和简易的操作方法,主要内...

订阅51CTO邮刊

点击这里查看样刊

订阅51CTO邮刊