我試圖讓自己熟悉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 關注
- 93 瀏覽
添加回答
舉報
0/150
提交
取消