一.拷貝
package main
import "fmt"
func main(){
//copy函數,把一個切片copy到另一個切片之上
var a [1000]int=[1000]int{0,1,2,3,4,5}
b:=a[:4]
c:=make([]int,4,4)
copy(c,b)
fmt.Println(c)
c[1]=3
fmt.Println(a)
}
// copy是將索引部分和值部分都在內存開辟了新的控件復制了兩份,a與C沒有關聯關系,c變a也不會發送變化
二.賦值
package main
import "fmt"
func main(){
var a [1000]int=[1000]int{0,1,2,3,4,5}
b:=a[:4]
c:=b
fmt.Println(c)
c[1]=3
fmt.Println(a)
}
//只在內存開辟了一個索引區域,復制了一份但是同樣還是指向a,所有此時c發送改變a也發送改變