渐进式编程课
Go 目录
第 10 课2026.09.11

让方法直接修改原结构体字段。

第 10 课:指针接收者修改状态

  • 日期:2026-09-11
  • 课程序号:第 10 课
  • 知识点:指针接收者方法

用途

让方法直接修改原结构体字段。

核心概念

*T 接收者操作原值,适合需要持久更新状态的方法。

最小代码或操作示例

go
type Lesson struct { Done bool }
func (l *Lesson) Complete() { l.Done = true }
item := Lesson{}
item.Complete()

3~5 分钟练习

增加 Reset 方法把状态改回 false。

参考答案

func (l *Lesson) Reset() { l.Done = false }。

与上一课的联系

上一课用值接收者读取数据;本课用指针接收者修改状态。