make 和 new

2018-05-17  本文已影响0人  charlieyan

内建函数 make 用来为 slice,map 或 chan 类型分配内存和初始化一个对象(注意:只能用在这三种类型上
第一个参数也是一个类型而不是一个值,跟 new 不同的是,make 返回类型的引用而不是指针,而返回值也依赖于具体传入的类型

var slice_ []int = make([]int,5,10)
fmt.Println(slice_)
结果 [0 0 0 0 0]

var slice_1 []int = make([]int,5)
fmt.Println(slice_1)
结果 [0 0 0 0 0]

var slice_2 []int = []int{1,2}
fmt.Println(slice_2)
结果[1 2]

这里make的第三个可选参数规定的是该Slice(或者其他)的最大容量

上一篇 下一篇

猜你喜欢

热点阅读