参考答案
结论:切片复制分两种,切片表达式仅复制元数据(浅拷贝),copy函数复制元素值(表层拷贝)。过程:使用copy(dst,src)时,系统取min(len(dst),len(src))个元素,将src对应索引处的元素逐个赋值到dst,不会扩容dst;若元素为值类型则拷贝值,为引用类型则拷贝引用(浅拷贝)。切片表达式s2:=s1[a:b]直接构造新SliceHeader,Data指向s1底层数组的a位置,无数据移动,仅拷贝指针、len、cap。示例:d:=make([]int,2); n:=copy(d,s); 将s前2个元素复制到d,返回复制个数n。