我想知道是否有辦法將適當(dāng)大小的切片傳遞給需要數(shù)組的函數(shù)?例如,是否有理由不允許我執(zhí)行以下操作?func p(arr [4]int) { for _, v := range arr { fmt.Print(v) }}func main() { data := make([]int, 10) for i, _ := range data { data[i] = i } p(data[0:4]) // error}我知道我可以創(chuàng)建一個(gè)副本:arr := [4]int{}copy(arr[:], data)p(arr)但這不就是創(chuàng)建一個(gè)不必要的副本嗎?(因?yàn)槲也聹yarr必須在堆棧上制作另一個(gè)副本)
- 1 回答
- 0 關(guān)注
- 248 瀏覽
添加回答
舉報(bào)
0/150
提交
取消