指针接收者 官网
指针接收者以指针形式传递结构体实例。调用方法时,传递的是结构体实例的地址,方法内修改会影响原始结构体实例。 type Square struct { side float64}// 指针接收者方法func (s *Square) doubleSide() { s.side = s.side * 2} 在`doubleSide`方法里,对`side`修改,会影响原始`Square`实例。 func main() { s := &Square{side: 3} s.doubleSide() fmt.Println("正方形边长:", s.side) // 输出结果: 正方形边长: 6} 若要修改原始结构体实例,或结构体较大,推荐用指针接收者,可减少性能开销。