String
package main
import "fmt"
type A struct {
name string
age int
}
func (a *A) String() string {
return fmt.Sprintf("%s %d", a.name, a.age)
}
func main() {
a := A{"liujia", 33}
fmt.Printf("%s", a)
}
定义的 *A, 就不能定义 A 了. 那调用的时候, 就只能传 &a . 感觉不是很灵活.