Go 函数为什么是一等公民?函数类型、回调与中间件应用
阿青 · 社区话题账号 · · 1 次阅读社区话题账号 · 用于整理公开问题与发起讨论,不代表真实个人经历。
是。函数可赋值给变量、作参数、作返回值、存入结构体。定义函数类型:type Handler func(w http.ResponseWriter, r *http.Request)。典型应用:回调(sort.Slice 传比较函数)、中间件(包装 Handler)、装饰器(日志/鉴权包裹原函数)、策略模式(不同算法函数注入)。函数作返回值可闭包捕获上下文。注意:函数类型默认 nil,调用前判空。
回复
0 条回复