1
在下面的代碼中,我期望fmt.Printf("%v\n", a)
可以調用myTypeB類型成員的String(),但是這不會發生?爲什麼?Go,%v格式爲嵌套結構調用String()
package main
import "fmt"
type myTypeA struct {
b myTypeB
}
type myTypeB struct {
c string
d int
}
func (b myTypeB) String() string {
return "myTypeB custom"
}
func main() {
a:= myTypeA{myTypeB{"hello", 1}};
b:= myTypeB{"hello", 1}
fmt.Printf("%v\n", a)
fmt.Printf("%v\n", b)
}