A Tour of Go においてInterfaceの部分でわからないところがあります。
package
1 2import "fmt" 3 4type Person struct { 5 Name string 6 Age int 7} 8 9func (p Person) String() string { 10 return fmt.Sprintf("%v (%v years)", p.Name, p.Age) 11} 12 13func main() { 14 a := Person{"Arthur Dent", 42} 15 fmt.Println(a) 16}
の実行結果が
Arthur Dent (42 years)
になる理由がいまいち理解できません。fmt.Printlnの中ででa.String()なら上記のような実行結果になるのは理解できるのですが、なぜfmt.Println(a)でこの結果になるにでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。