Skip to content

练习 — function

对应文档:docs/phase-01-fundamentals/function.md 代码目录:workspace/phase-01/function/

Level 1 — 基础

1.1 编写 add(a, b int) intswap(a, b string) (string, string) 多返回值函数。

1.2_ 忽略多返回值中的一个。

1.3 可变参数 sum(nums ...int) int,传入 3 个和 5 个参数测试。

Level 2 — 应用

2.1 distance(x1,y1,x2,y2 float64) float64 计算 AGV 到目标点距离。

2.2 divide(a, b float64) (float64, error),b=0 时返回 error。

2.3 filterOverspeed(agvs []AGV, max float64) []AGV 过滤超速设备。

Level 3 — 综合

3.1 函数作为参数:apply(agvs []AGV, fn func(AGV) bool) []AGV 通用过滤。

3.2 闭包:返回一个计数函数,每次调用递增。

Level 4 — 项目实践

4.1 telemetry.go:ParseTelemetry(raw string) (AGV, error)、ValidateAGV(a AGV) error、FormatStatus(a AGV) string,main 演示完整流程。

学习检查

  • [ ] 多返回值模式?
  • [ ] 何时返回 error?

提交:检查答案 — function 练习 X.X


学习导航

上一篇:struct · 对应知识文档 · 下一篇:pointer