值类型和引用类型讲解
一、值类型:
值类型包括,基本数据类型 int系列、float系列、bool、string、数组和结构体;
值类型:变量直接存储值,内存通常在栈中分配;
var num = 100
如图所示:
二、引用类型:
引用类型包括,指针、slice切片、map、管道 chan、interface等;
引用类型:变量存储一个地址,地址对应的空间才真正存储数据(值),内存通常在堆上分配。当没有任何变量引用这个地址时,该地址对应的数据空间就成为一个垃圾,由GC来回收;
引用类型 ptr
如图所示:
三、图示 栈与堆在内存中分配:
如图所示: