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

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/

赞同来自:

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

要回复问题请先登录注册