初始化空切片的正确方法

初始化空切片的正确方法,第1张

初始化空切片的正确方法

您提供的两个选择在语义上是相同的,但是使用

make([]int, 0)
会导致内部调用 runtime.makeslice (Go 1.14)。

您还可以选择保留其

nil
值:

var myslice []int

如Golang.org博客中所述:

nil切片在功能上等效于零长度切片,即使它没有指向任何内容。它的长度为零,可以附加分配

nil
片段将然而
json.Marshal()
"null"
而空片将编组成
"[]"
,如通过@farwayer指出。

如@ArmanOrdookhani所指出的,以上选项均不会导致任何分配。



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5163402.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-11-18
下一篇 2022-11-18

发表评论

登录后才能评论

评论列表(0条)

保存