大佬们,有没有人知道 Go 修改 struct 的打印信息,类似于 python 的 __str__ 函数
更多评论
```golang
type X struct {
Name string
Age int
}
func (x X) String() string {
return fmt.Sprintf("String 名字:%s,年龄:%d", x.Name, x.Age)
}
func (x X) GoString() string {
return fmt.Sprintf("GoString 名字:%s,年龄:%d", x.Name, x.Age)
}
func main() {
x := X{
Name: "小明",
Age: 20,
}
fmt.Println(x)
fmt.Printf("%v\n", x)
fmt.Printf("%#v\n", x)
}
```
最后输出
```
String 名字:小明,年龄:20
String 名字:小明,年龄:20
GoString 名字:小明,年龄:20
```
#1