外观
练习 — function
对应文档:
docs/phase-01-fundamentals/function.md代码目录:workspace/phase-01/function/
Level 1 — 基础
1.1 编写 add(a, b int) int 和 swap(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