C# 值类型和引用类型 Day0815

值类型:

1.枚举类型    enum

2.结构类型    1.数值类型  int(32)  float(32) double(64)   char

                        2.布尔类型  bool

3.结构体 struct

引用类型:string   class  interface  delegate  数组

不同:

值类型: 

1.只需要一段单独的内存,存在栈中,用于存放实际的数据

2.存取速度快

 3.栈的内存分配是自动释放

4.值类型相互赋值之后,两个变量做的任何操作互不影响


引用类型:

1.需要两段内存  第一段是一个引用,指向数组在村中的存放位置,第二段存储实际的数据,他总是位于堆中,new 来声明

2.存取速度慢

3.堆在.NET中会有GC来释放

4.引用类型相互赋值之后,他们公用同一个空间,互相影,一个值改变另一个也会发生改变

你可能感兴趣的:(C# 值类型和引用类型 Day0815)