代码如下:
package main import "fmt" type MyStruct struct { Name string *Person } type Person struct { age int } func NewMyStruct(name string) *MyStruct { return &MyStruct{ Name: name, Person: &Person{ age: 18, }, } } func main() { p := NewMyStruct("小王子") fmt.Printf("p=%+v\n", p) } 我在为结构体的指针类型字段赋值时,输出后 Person 为什么是内存地址呢?
我的理解是 MyStruct 结构体中*Person 会解除指针引用取值输出 18.
