关于指针的取值的小白问题

Blobpit是个指针也就是 Blob的地址,为啥Blobpit.er.name能取到值?


type person struct {
per xx
}

type xx struct {
name string
}
func main() {
Blob := person{
per : xx{
name: "Blob",
},
}

Blobpit := &Blob

fmt.Println(Blobpit)
fmt.Println(Blobpit.per.name)
fmt.Println((*Blobpit).per.name)//不是应该这样取吗
}
已邀请:

yangbt - https://github.com/ybtq 在健身房写代码的程序猿

赞同来自:

一看就是个C程序员。
Go跟C不一样,我刚开始也困惑。至于Go为什么这么设计,我也没去了解。

lrita

赞同来自:

语法糖,C中的->也是语法糖,省的你写(*xx).yy

javasgl - https://javasgl.github.io/

赞同来自:

它知道是指针的时候,不需要自己手动转,它自己就给你转了

要回复问题请先登录注册