现在尝试从教程中学习 Go,并有一个非常基本的问题:
func main() {
a := make([]int, 5)
// [0,0,0,0,0] len=5 cap=5
b := make([]int, 0, 5)
// [] len=0 cap=5
c := b[:2]
// [0,0] len=2 cap=5
d := c[2:5]
// [0,0,0] len=3 cap=3
}
为什么c看起来像[0,0]并且长度为 2?b最初没有归零,因此它是[]. 因此,没有设定c到b[:2]零了前两个要素是什么?
另外,为什么容量是d3?很困惑。
潇湘沐
慕斯王
相关分类