您需要在此处使用指针,否则每次都仅更改原始对象的副本。一切都通过价值传递。
type Point struct { x, dx int}func (s *Point) Move() { s.x += s.dx log.Printf("New X=%d", s.x)}func (s *Point) Print() { log.Printf("Final X=%d", s.x)}func main() { st := Point{ 3, 2 }; st.Move() st.Print()}


