在Go语言中,我们可以使用结构体嵌套指针来建立复杂的数据结构。下面是一个示例:
package main
import "fmt"
type Address struct {
City string
State string
}
type Person struct {
Name string
Address *Address
}
func main() {
address := &Address{
City: "Beijing",
State: "Beijing",
}
person := &Person{
Name: "Alice",
Address: address,
}
fmt.Println("Person:", person.Name)
fmt.Println("City:", person.Address.City)
fmt.Println("State:", person.Address.State)
}
在上面的示例中,我们定义了一个Address
结构体和一个Person
结构体。Person
结构体中的Address
字段是一个指针类型,指向Address
结构体的实例。
在main
函数中,我们首先创建一个Address
结构体的指针address
,然后创建一个Person
结构体的指针person
,并将address
赋值给person
的Address
字段。
最后,我们可以通过person
访问Name
字段和Address
字段的属性。
输出结果为:
Person: Alice
City: Beijing
State: Beijing
这就是使用Go语言中的结构体嵌套指针的简单示例。希望能对你有所帮助!