将切片作为参数误区
Go语言中,slice作为函数参数时是值拷贝,意味着函数将获得切片的副本:指向基础数组的起始地址的指针,以及切片的长度和容量。func main() { nums:=make([]int,0,100) fmt.Printf("main里面的地址:%p\n",&nums) try(nums)}func try(nums []int) { fmt.Printf("try里面的地址:%p\n",&nums)}输出结果:可以看出两个nums切片的地址不一样,从而知道
原创
2022-03-12 14:55:15 ·
812 阅读 ·
0 评论