空切片问题

sharkLoc · · 1174 次点击
你好,我还是不太理解。 就像下面这个例子,操作函数没有返回值,直接对切片进行操作,这个不是引用类型? ``` package main import "fmt" func mytest(x []int) { x[0] = 100 } func main() { var demo []int = []int{1, 2, 3} fmt.Println(demo) mytest(demo) fmt.Println(demo) } ```
#5
更多评论
明白了,s1相当于已经做一次初始化,已经分配内存了,就不等于nil ![ss.png](https://static.studygolang.com/220113/8c3b175899f50612f103041c2c9c94cf.png)
#1
这种用法是不对的,不应该对slice进行nil判断,应该进行len()取长度
#2