我试图让自己熟悉interface{}Go。我试过了: var m map[string]string
m["time"] = "asdf"并得到错误:分配给 nil 映射中的条目我不确定为什么会收到错误消息。
3 回答
蝴蝶不菲
TA贡献1810条经验 获得超4个赞
当您声明这样的变量时:
var m map[string]string
您的m变量分配有默认值map,即nil,而不是空映射。这就是您收到该错误的原因,您正在尝试将值添加到 nil 映射。
要初始化一个空地图,您可以尝试以下任何一种方法:
var m map[string]string = map[string]string{}
m := make(map[string]string)
m := map[string]string{}
这是一篇关于所有 Go 类型的默认值的文章。
慕神8447489
TA贡献1780条经验 获得超1个赞
您需要使用 make(built-in function) like make(map[string]string, 0)
来初始化地图
https://golang.org/doc/effective_go.html#allocation_make
https://golang.org/doc/effective_go.html#maps
- 3 回答
- 0 关注
- 74 浏览
添加回答
举报
0/150
提交
取消