代码如下:
```
type Student struct {
Name string
}
func remove(stu *Student) {
fmt.Println("2----", stu)
stu = nil
fmt.Println("3----", stu)
}
func main() {
stu := &Student{"中国"}
fmt.Println("1----", stu)
remove(stu)
fmt.Println("4----", stu)
}
```
执行结果:
```
1---- &{中国}
2---- &{中国}
3---- <nil>
4---- &{中国}
```
代码中传递的是地址,为什么没有改变掉stu的值,在第4步的值仍然不变
有疑问加站长微信联系(非本文作者)