go 中的值类型和引用类型
所有像int, float, string, bool 这些基本类型都是属于值类型,使用时是直接指向内存中的值
当使用 = 将一个变量赋值给一个变量时,比如a = b ,这种就是引用类型,实际上是将内存中b的值进行的拷贝,将a的值引用给了b一份
使用&i可以获取变量的内存地址,列如: 0xf840000040 16进制方式。值类型的变量的值存储在栈(系统自动释放)中。
内存地址会根据机器的不同而不同,甚至相同的程序在不同的机器中运行也会有不同的结果,因为每一台机器都有不同的存储器布局,并且位置分配也可能不同。
更复杂的数据通常会需要使用更多的字,这些数据一般使用引用类型保存。
一个引用类型的变量 r1 存储的是 r1 的值所在的内存地址(数字),或内存地址中第一个字所在的位置。