原文: http://golang.org/doc/articles/slices_usage_and_internals.html
中文: http://zh-golang.appsp0t.com/doc...使用 copy 函数,我们可以简化上面的代码片段:
t := make([]byte, len(s), (cap(s)+1)*2)
copy(t, s)
s = t
一个常见的操作是将数据追加到切片的尾部...下面的函数将元素追加到切片尾部,必要的话会增加切片的容量,最后返回更新的切片:
func AppendByte(slice []byte, data ...byte) []byte {
m :=...但大多数程序不需要完全的控制,因此Go提供了一个内置函数 append,用于大多数场合;它的函数签名:
func append(s []T, x ...T) []T
append函数将x追加到切片s的末尾...a := make([]int, 1)
// a == []int{0}
a = append(a, 1, 2, 3)
// a == []int{0, 1, 2, 3}
如果是要将一个切片追加到另一个切片尾部