gpt4 book ai didi

go - 如何解释golang slice range的现象

转载 作者:数据小太阳 更新时间:2023-10-29 03:43:14 26 4
gpt4 key购买 nike

<分区>

type student struct {
Name string
Age int
}

func main() {
m := make(map[string]*student)
s := []student{
{Name: "Allen", Age: 24},
{Name: "Tom", Age: 23},
}

for _, stu := range s {
m[stu.Name] = &stu
}
fmt.Println(m)
for key, value := range m {
fmt.Println(key, value)
}
}

结果:

map[Allen:0xc42006a0c0 Tom:0xc42006a0c0]

Allen &{Tom 23}

Tom &{Tom 23}

如何解释Slice的现象,在我看来,stu应该是s的每一个成员的地址,但是从结果来看,s有相同的地址。

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com