分类
引用类型
string,数组,类
值类型
有符号整形,无符号整形 ,浮点数, char ,bool,结构体
值类型和引用类型的区别
//值类型在相赋值时 把内容拷贝给对方 它变我不变
//引用类型的相互赋值 是 让两者指向同一个值 它变我也变
2.为什么有以上区别
//值类型 和 引用类型 存储在的 内存区域 是不同的 存储方式是不同的
//所以造成了 使用上的区别
//值类型存储在 栈空间 一系统分配,自动回收 ,小而快
//引用类型 存储在 堆空间 一手动申请和释放 , 大而慢
引用类型在栈空间存储的是一个地址,该地址指向堆空间,堆空间才是真正储存着引用类型数据的地方。
所以公用一个数据库的两个引用类型,当其中一个修改了数据,那么两个都会变。
除非是 通过 new 重新赋值时,相当于又申请开辟了新的数据库,这时再更改其中一个就不会是同步修改了。
string非常的特殊 它具备 值 类型的特征 它变我不变
//string 虽然方便 但有缺点 频繁改变string 重新赋值
//会产生 内存垃圾(申明了但没有任何一处引用的话,如果不回收,会影响性能)
调试查看内存