扩展结构定义 golang



我想从另一个结构定义扩展结构定义

type A struct {
name string
}
type B struct {
A
}

所以这里的 A 是 B 的子结构。但我不想这样。相反,我希望 B 的定义与 A 相同,没有任何嵌套

var a A
var b B
fmt.Printf("%v, %v t", a, b)
a.name = "john"
b.name = "rick"
fmt.Printf("%v, %v t", a, b)

所以这个的输出是{john} {{rick}}.我希望它是{john}{rick}

你可以做:

type B A

但是,如果执行此操作,则为A定义的任何方法都不适用于B

最新更新