程序通过此引用找到真正的数据

时间:2022-02-08 08:14:06

C#中的变量类型按照其界说可以分为两种:一种是值类型,一种是引用类型。这两种类型的分歧在于数据的存储方法。值类型的变量自己直接存储数据。而引用类型则存储实际数据的引用,措施通过此引用找到真正的数据。

值类型变量直接存储其数据值,主要包罗整数类型、浮点类型以及布尔类型。值类型变量在栈中进行分配,因此效率很高,使用值类型主要目的是为了提高性能。值类型有如下特性:

1、值类型都存储在栈中。

2、访谒值类型变量时,一般都是直接访谒其实例。

3、每个值类型变量都有本身的数据副本,因此对一个值类型变量的操纵不会影响其他变量。

4、复制值类型变量时,复制的是变量的值,而不是变量的地点。

5、值类型变量不能为null,必需具有一个确定的值。


值类型是从System.ValueType类担任而来的类型。

整数类型:

整数类型用来存储整数数值,即没有小数部分的数值。可以是正数,也可以是负数。整数型数据在C#中有3种暗示形式:分袂为:十进制、八进制、十六进制。

此中八进制必需以0开头。好比:0123.

十六进制必需以0x0X开头。

C#中内置的数据类型为:sbyteshortintlong byteushort uintulong

浮点类型变量主要用于措置惩罚惩罚含有小数的数值数据,浮点类型主要包罗floatdouble两种数值类型。

如果不做任何设置,包罗小数点的数值都被认为是double类型。如果要将数值以float类型来措置惩罚惩罚,就应该通过强制使用Ff将其指定为float类型。

如果要将数值强制指定为double类型,则应该使用Dd进行设置。

布尔类型主要用来暗示truefalse值。一个布尔类型的变量,其值只能是truefalse。不能将其它的值指定给布尔类型变量。布尔类型变量不能与其它类型之间进行转换。布尔类型凡是被用在流程控制中作为判断条件。

引用类型:

引用类型是构建C#应用措施的主要东西类型数据。在应用措施执行过程中,预先界说的东西类型以new创建东西类型,并且存储在堆中。堆是一种由系统弹性配置的内存空间,,没有特定巨细及存活时间,因此可以备弹性地运用于东西的访谒。引用类型就类似于生活中的代办代理商,代办代理商没有本身的产品,而是代办代理厂家的产品,使其就仿佛是本身的产品一样。

引用类型具有如下特征:

1、必需在托管堆中为引用类型变量分配内存。

2、使用new关键字来创建引用类型变量。

3、在托管堆中分配的每个东西都有与之相关联的附加成员,这些成员必需被初始化。

4、引用类型变量是由垃圾回收机制打点的。

5、多个引用类型变量可以引用同一个东西,这种情形下,对一个变量的操纵会影响另一个变量所引用的同一个东西。

6、引用类型被赋值前的值都是null

7、所有被称为“类”的都是引用类型。主要包孕:类、接口、数组和委托。


好比:创建一个控制台应用措施,在此中创建一个类C,在此类中成立一个字段Value,并初始化为0。然后,在措施的其它位置通过new创建对此类的引用类型变量。代码如下:

class Program

{

class C

{

public int Value=0;

}

public static void Main(string[] args)

{

C c1=new C();

c1.Value=100;