我想分配这样的地图中的结构字段:package mainimport ( "fmt")type Task struct { Cmd string Desc string}var taskMap = map[string] Task{ "showDir": Task{ Cmd: "ls", }, "showDisk": Task{ Cmd: "df", },}var task = Task{ Cmd: "ls",}func main() { // *Error*cannot assign to taskMap["showDir"].Desc taskMap["showDir"].Desc = "show dirs" task.Desc = "show dirs" // this is ok. fmt.Printf("%s", taskMap) fmt.Printf("%s", task)}我可以Desc在变量中分配字段,task但不能在包装的地图中分配taskMap,出了什么问题?
1 回答
喵喵时光机
TA贡献1846条经验 获得超7个赞
您可以使用指针:
var taskMap = map[string]*Task{
"showDir": {
Cmd: "ls",
},
"showDisk": {
Cmd: "df",
},
}
func main() {
taskMap["showDir"].Desc = "show dirs"
fmt.Printf("%+v", taskMap["showDir"])
}
- 1 回答
- 0 关注
- 166 浏览
添加回答
举报
0/150
提交
取消