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]