猿问

如何在 Go 中的结构内初始化嵌套映射?

如果我在结构中有这样的嵌套映射变量:


type someStruct struct {

    nestedMap map[int]map[string]string

}


var ss = someStruct {

    nestedMap: make(map[int]map[string]string),

}

这不起作用并且会出现运行时错误。


我如何初始化它?


白衣非少年
浏览 191回答 2
2回答

喵喵时光机

您还必须制作子地图。func (s *someStruct) Set(i int, k, v string) {    child, ok := s.nestedMap[i]    if !ok {        child = map[string]string{}        s.nestedMap[i] = child    }    child[k] = v}

开心每一天1111

像这样初始化嵌套映射:temp := make(map[string]string,1)temp ["name"]="Kube"ss.nestedMap [2] = tempfmt.Println(ss)
随时随地看视频慕课网APP

相关分类

Go
我要回答