Runtime error: assignment to entry in nil map

前端 未结 4 1101
逝去的感伤
逝去的感伤 2021-01-31 12:53

I am trying to generate a map and then convert that to a yaml file like this:

uid :
      kasi:
        cn: Chaithra
        street: fkmp
      nandan:
        c         


        
4条回答
  •  滥情空心
    2021-01-31 13:47

    There is thing as per the error

    assignment to entry in nil map
    

    For nested maps when assign to the deep level key we needs to be certain that its outer key has value. Else it will say that the map is nil. For eg in your case

    m := make(map[string]map[string]T, len(names))
    

    m is a nested map which contains string key with map[string]T as value. And you are assign the value

    m["uid"][name] = T{cn: "Chaithra", street: "fkmp"}
    

    here you can see the m["uid"] is nil and we are stating it contains a value [name] which is a key to nested value of type T. So first you need to assign value to "uid" or initialise it as

    m["uid"] = make(map[string]T)
    

提交回复
热议问题