Golang 匿名字段和内嵌结构体
// 定义一个基础的结构体
type Base struct {
BaseField string
}
// 定义一个内嵌的匿名结构体
type AnonymousStruct struct {
Base // 内嵌结构体,不需要命名
Field string
}
func main() {
// 创建一个匿名结构体的实例
a := AnonymousStruct{
Base: Base{
BaseField: "Base value",
},
Field: "Anonymous value",
}
// 访问内嵌结构体的字段
fmt.Println(a.BaseField) // 输出: Base value
// 访问匿名结构体的字段
fmt.Println(a.Field) // 输出: Anonymous value
}
这段代码首先定义了一个名为Base
的基础结构体,然后定义了一个内嵌了Base
结构体的匿名结构体AnonymousStruct
。在main
函数中,我们创建了AnonymousStruct
的一个实例,并演示了如何访问内嵌结构体的字段和匿名结构体的字段。这是Go语言中结构体嵌套的一个常见用法。
评论已关闭