【本文为囧希博客个人原创文章,转载请注明出处!http://blog.csdn.net/yunpro】
【变量的基本概念】
变量本身被用来存储在内存中的特定类型的数据,可以根据需要随时改变变量中所存储的数据值。
变量具有名称、类型和值。
变量名是变量在程序源代码中的标识。
变量类型确定它所代表的内存的大小和类型,变量值是指它所代表的内存块中的数据。
在程序的执行过程中,变量的值可以发生变化。
使用变量之前必须先声明变量,即指定变量的类型和名称。
【变量类型】
c#的变量类型一共有一下几种:
(1)值类型
(2)引用类型
(3)枚举类型
学习时特别注意:值类型与引用类型的区别
【值类型】
值类型变量直接存储其数据值,主要包含整数类型、浮点类型以及布尔类型等。
值类型变量在堆栈中进行分配,因此效率很高,使用值类型主要目的是为了提高性能,主要分为以下3种值类型。
(1)整数类型
(2)浮点类型
(3)布尔类型
【引用类型】
引用类型是构建C#应用程序的主要对象类型数据。
在应用程序执行的过程中,预先定义的对象类型以new创建对象实例,并且存储在堆栈中。
堆栈是一种由系统弹性配置的内存空间,没有特定大小及存活时间,因此可以被弹性地运用于对象的访问。引用类型有如下特征:
必须在托管堆中为引用类型变量分配内存。
必须使用new关键字来创建引用类型变量。
在托管堆中分配的每个对象都有与之相关联的附加成员,这些成员必须被初始化。
引用类型变量是由垃圾回收机制来管理的。
多个引用类型变量可以引用同一对象,这种情形下,对一个变量的操作会影响另一个变量所引用的同一对象。
引用类型被赋值前的值都是null。
【值类型与引用类型的区别】
从概念上看,值类型直接存储其值,而引用类型存储对其值的引用。
从内存空间上看,值类型是在栈中操作,而引用类型则在堆中分配存储单元。
但值类型在栈上分配内存,而引用类型在托管堆上分配内存,却只是一种笼统的说法。
下面对其进行详细描述:
(1)对于值类型的实例,如果作为方法中的局部变量,则被创建在线程栈上。(先进后出)
(2)引用类型的实例创建在托管堆上。(先进先出)
【枚举类型】
枚举类型是一种独特的值类型,它用于声明一组具有相同性质的常量,使用枚举可以增加程序的可读性和可维护性。在C#中使用关键字enum类声明枚举,其形式如下。
enum 枚举
{
list1=value1,
list2=value2,
list3=value3,
…
listN=valueN,
}
个人热衷游戏程序制作,欢迎和我进行探讨与各种交流!
咱邮箱:wy66666666@qq.com