例子1funcchange(arr[3]int){arr[1]=0}funcmain(){arr:=[3]int{1,2,3}change(arr)fmt.Print(arr)//[1,2,3]}例子2funcchange(arr[]int){arr[1]=0}funcmain(){arr:=[]int{1,2,3}change(arr)fmt.Print(arr)//[1,0,3]}在例子1和2中,僅是[]int和[3]int的區(qū)別,為何例子1的行為是修改arr的副本,而例子2就是修改arr的本身呢?應(yīng)該怎么理解這個(gè)現(xiàn)象?
請(qǐng)教各位一個(gè)問(wèn)題,求解答:GO函數(shù)傳參 []int 與 [3]int 有何區(qū)別?各位有什么建議?
縹緲止盈
2019-10-16 10:32:50