对于String()的疑问
来源:6-5 接口的组合

Young小师
2020-04-09
//大概如下
type Anyway struct{
data int
}
func (a *Anyway) String() string{
return sprintf("Implement Stringer interface{data:%d}",data)
}
func main(){
a := &Anyway{data:666}
fmt.Println{a}
fmt.Println{a.String()}
}
//输出结果都是Implement Stringer interface{data:666}
问:为什么没调用String()还是这个结果?
写回答
1回答
-
ccmouse
2020-04-09
这就是stringer interface的作用。print系列函数里面会看传进来的参数有没有实现stringer,如果有,就会自动调用String()
00
相似问题