go语言for range中的坑

go语言for range中的坑

如果要取指针的话,使用这种方法

原因是 for range 循环 只有第一次的时候 是 := ,从第二次循环开始都是 = (对之前的变量进行赋值而不是重新初始化所以都是对应的同一个指针) ;所以不管循环多少次 指针地址都是一样的;

本作品采用《CC 协议》,转载必须注明作者和本文链接
good good study day day up
讨论数量: 6

这样可以减少内存分配, 可以 append tmp 或者 使用 for + 索引取值的方式

1年前 评论
don178 (作者) 1年前
learner 1年前
learner 1年前

key 与 value 在 for 作用域里面只会声名一次,生命周期内共享地址不变会

1年前 评论

github.com/golang/go/discussions/5..., 这里有一个bug。可以参考下。

1年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!