我正在尝试熟悉 go 例程。我编写了以下简单程序来将 1-10 的数字平方存储在地图中。
func main() {
squares := make(map[int]int)
var wg sync.WaitGroup
for i := 1; i <= 10; i++ {
go func(n int, s map[int]int) {
s[n] = n * n
}(i, squares)
}
wg.Wait()
fmt.Println("Squares::: ", squares)
}
最后,它打印一张空地图。但是在 go 中,地图是通过引用传递的。为什么打印一张空地图?
HUWWW
慕虎7371278
相关分类