一:值类型
变量直接存储值,内存通过栈中分配,系统自动回收,不需要初始化
1:基本数据类型 int string bool
var a int var b string
2: 数组
var s [2]int
3:结构体
s:= struct { Id int Name string }{}
二:引用类型
变量存储的是一个内存地址 内存在堆上分配,通过GC回收,使用需要初始化,可以通过make初始化
1:切片
c:= make([]string,0)
2:管道
ch:= make(chan string,5)
3:Map
m:= make(map[string]string)
4: 指针
var n = 100 var p *int = &n