map的value不能取址问题

1 如果map的value是struct,则需要是指针类型,否则的话不能对结构体的某个字段单调赋值,只能整体赋值,因为map扩容的时候要变址

package main
import "fmt"

type person struct {
    name string
    age  int
    sex  string
}
func main() {
    s := make(map[int]*person)
    s[1] = &person{"tony", 20, "man"}
    fmt.Println(s[1])
    s[1].name = "tom"
    fmt.Println(s[1].name)
}
View Code

https://blog.csdn.net/qq_36431213/article/details/82805043

原文地址:https://www.cnblogs.com/xxswkl/p/14354444.html