类型分为两种:
值类型主要有 整数、bool、struct、char、小数
引用类型主要有 string 数组 自定义的类 内置的类
值类型 的内存存储方式是 栈
栈: puch插入 pop删除 先进后出
引用类型是 栈和堆
堆是任意顺序存储的空间
引用类型需要两段内存,一段用来存储实际的数据(在堆中),另一段是引用(在栈中),指向数据在堆中存放的位置。(类似指针)
当引用被删除时(即对象不再被程序使用),GC会回收在堆中的数据。(GC指Garbage Collector垃圾回收器)
当类型被赋值时,改变的是引用所指向的地址,即当b = a,b会指向a所指向的地址,而b原本指向的数据会被回收。