如何初始化带嵌套结构的结构体?

提问者:帅平 问题分类:面试刷题
如何初始化带嵌套结构的结构体?
1 个回答
つ浅笑嫣然
つ浅笑嫣然
go 的哲学是组合优于继承,使用 struct 嵌套即可完成组合,内嵌的结构体属性就像外层结构的属性即可,可以直接调用。
注意初始化外层结构体时,必须指定内嵌结构体名称的结构体初始化,如下看到 s1方式报错,s2 方式正确。
type stPeople struct {
    Gender bool
    Name string
}
type stStudent struct {
    stPeople
    Class int
}
//尝试4 嵌套结构的初始化表达式
//var s1 = stStudent{false, "JimWen", 3}
var s2 = stStudent{stPeople{false, "JimWen"}, 3}
fmt.Println(s2.Gender, s2.Name, s2.Class)
发布于:5个月前 (11-29) IP属地:四川省
我来回答