查看
this sandbox
声明从不同结构继承的结构时:
type Base struct { a string b string } type Something struct { Base c string }
f(Something{ a: "letter a",c: "letter c",})
这对我来说似乎很奇怪.这真的是预期的功能吗?
谢谢您的帮助!
Golang没有提供典型的继承概念.你在这里完成的是emedding.
它不给外部结构提供内部结构的字段,而是允许外部结构访问内部结构的字段.
为了创建外部结构,你需要给它的字段包括内部结构基础
在你的情况下:
Something{Base: Base{a: "letter a"},c: "letter c"}