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

posted on 2021-01-31 22:27  吃我一枪  阅读(138)  评论(0编辑  收藏  举报

导航