匿名フィールド (またはスーパークラス) を使用して構造体の正しいタイプを取得するにはどうすればよいですか?
私はこの魚が自分自身をタラと表現するようにしようとしています:
package main
import (
"fmt"
"reflect"
)
type Fish struct {
}
func (self *Fish) WhatAmI() string {
return reflect.TypeOf(self).String()
}
type Cod struct {
Fish
}
func main() {
c := new(Cod)
fmt.Println("I am a", c.WhatAmI())
}
私が得る出力は次のとおりです。
I am a *main.Fish
私が欲しいのは:
I am a *main.Cod