make() 是 Go 语言内存分配的内置函数,默认有三个参数。

make(Type, len, cap)

三个参数

Type:数据类型,必要参数,Type 的值只能是 slice、 map、 channel 这三种数据类型。
len:数据类型实际占用的内存空间长度,map、 channel 是可选参数,slice 是必要参数。
cap:为数据类型提前预留的内存空间长度,可选参数。所谓的提前预留是当前为数据类型申请内存空间的时候,提前申请好额外的内存空间,这样可以避免二次分配内存带来的开销,大大提高程序的性能。

make() 的三种不同用法:

第一种,只传类型,不指定实际占用的内存空间和提前预留的内存空间,适用于 map 和 channel 。
第二种,指定实际占用的内存空间为 2,不指定提前预留的内存空间。
第三种,指定实际占用的内存空间为 2,指定提前预留的内存空间是 4。

参考:
https://blog.csdn.net/yilovexing/article/details/121172745

posted on 2023-02-24 16:15  西伯尔  阅读(332)  评论(0编辑  收藏  举报