有谁知道为什么这不起作用?
我现在已经绞尽脑汁大约 4 个小时了。我无法让它工作。
在我看来,我正在尝试做同样的事情两次。我在一个结构中制作一个字段的地图,然后我在另一个结构中的另一个字段上再次这样做。
如果我尝试制作地图。它失败了:“无法分配给结构字段。Bet.Events [“one”]。地图中的跑步者”。
因此,如果我删除 make,并尝试分配它,我会得到:“分配给 nil 映射中的条目”
https://play.golang.org/p/kRcXoyO-8FN
var Bet BetStruct
type BetStruct struct {
Events map[string]Event
}
type Event struct {
Name string
Runners map[int]Runner
}
type Runner struct {
Name string
}
func main(){
// == THIS WORKS FINE ==
Bet.Events = make(map[string]Event)
Bet.Events["one"] = Event{
Name: "first",
}
Bet.Events["two"] = Event{
Name: "second",
}
// == THIS DOES NOT WORK ==
Bet.Events["one"].Runners = make(map[int]Runner)
Bet.Events["one"].Runners[0] = Runner{
Name: "Jeff",
}
}
梵蒂冈之花
相关分类