在您的第一个(无效)示例中,
item是循环变量。它的地址不变,只有值。这就是为什么您在输出
idx时间内获得相同地址的原因。
运行以下代码,查看运行的机制;
func main() { coll := []int{5, 10, 15} for i, v := range coll { fmt.Printf("This one is always the same; %vn", &v) fmt.Println("This one is 4 bytes larger each iteration; %vn", &coll[i]) }}
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)