以下のサンプルに基づいて、「フィールドに構造体を埋め込む」という点は、Goの「プロモーション」メカニズムを破ることにあるようです。なぜあなたはこれをしたいのですか?フィールド(golang)に構造体を埋め込む目的は何ですか?
type obj1 struct {
obj2
}
type obj1Selector struct {
selector obj2
}
type obj2 struct {
}
func (o obj2) printTest() {
fmt.Println("obj2")
}
func main() {
o := obj1{}
o.printTest() //fine
oSelector := obj1Selector{}
oSelector.selector.printTest() //fine
oSelector.printTest() //not fine
「this」を使うたびに、子猫が死ぬ。 [Effective Go](https://golang.org/doc/effective_go.html)のガイドラインに従い、適切な名前を付けてください。例えば、: 'func(o obj2)printTest()...' – eduncan911
私はあなたが何を尋ねているのか、それがどのように「go/types」パッケージ(あなたは使用していない) 。ここで何が起こると思いますか? – JimB
私はこれを修正しました。動物を傷つけないでください。 – Charlie