枫叶飞翔 发表于 2018-9-21 09:24:52

Go语言中slice使用注意事项

func main() {  

  a := make([]int, 2, 4)
  a = 10
  a = 20
  //a:        &a: 0x10410020len: 2cap: 4
  fmt.Println("a:", a, " &a:", &a, " len:", len(a), " cap:", cap(a))
  

  //进行append操作
  //append是在第一个元素后开始追加,所以要超过容量,至少要追加4个,而不是之前例子的3个
  b := append(a[:1], 1, 2, 3, 4)
  

  //a:        &a: 0x10410020len: 2cap: 4
  fmt.Println("a:", a, " &a:", &a, " len:", len(a), " cap:", cap(a))
  //b: &b: 0x10454020len: 5cap: 8
  fmt.Println("b:", b, " &b:", &b, " len:", len(b), " cap:", cap(b))
  
}
  



页: [1]
查看完整版本: Go语言中slice使用注意事项