Go对数组使用切片的细节

Go对数组使用切片的细节

go对一个数组使用切片操作时,会自动生成一个指向该数组的切片

package main

import "fmt"

func setArray(s []int) {
    s[0] = 1
    s[1] = 2
}

// 函数内修改切片会导致数组变化,因为该切片指向的是数组地址
func main() {
    arr := [5]int{}
    setArray(arr[:])
    fmt.Println(arr[1])
}
Comments are closed.