Go 语言学习手册

免费学习 完整知识体系 快速检索

Go语言学习手册《匿名函数与闭包》:Go 支持匿名函数(没有名字的函数),可形成闭包。 **匿名函数:** ```go func() { fmt.Println("anonymous") }() // 立即执行 // 赋值给变量 add := func(a, b ...

函数

匿名函数与闭包

【详细说明 & 代码示例】
Go 支持匿名函数(没有名字的函数),可形成闭包。 **匿名函数:** ```go func() { fmt.Println("anonymous") }() // 立即执行 // 赋值给变量 add := func(a, b int) int { return a + b } ``` **闭包(Closure):** 函数捕获外部变量,生命周期延长。 ```go func counter() func() int { count := 0 return func() int { count++ return count } } c := counter() fmt.Println(c()) // 1 fmt.Println(c()) // 2 ``` **闭包常见用法:** 回调、延迟执行、迭代器。 **注意:** 循环中使用闭包容易出错(捕获变量引用),可使用参数传递副本。 ```go for i := 0; i < 3; i++ { go func(val int) { fmt.Println(val) }(i) // 传递 i 的副本 } ```

学习提示:建议安装 Go 环境(go.dev/dl),使用 VS Code 或 GoLand 编写代码,并熟练使用 go run、go build、go mod 等命令。

全部章节目录(共 30 个知识点)

Go 基础 (1个知识点)

接口(interface) (1个知识点)

指针 (1个知识点)

错误处理 (1个知识点)

包管理 (1个知识点)

并发:goroutine (1个知识点)

并发:channel (1个知识点)

同步原语 (1个知识点)

网络与 HTTP (1个知识点)

测试与性能 (1个知识点)

反射与泛型 (1个知识点)

CGO 与汇编 (1个知识点)

Web 框架 (1个知识点)

数据库操作 (1个知识点)

配置与日志 (1个知识点)

部署与运维 (1个知识点)

使用说明

  • • 本手册涵盖 Go 语言从基础到并发实战、Web 服务的完整知识体系
  • • 在搜索框输入关键词,快速定位相关知识点
  • • 点击条目标题进入详情页,查看详细说明与代码示例
  • • 页面按分类展示所有知识点,方便系统性学习
  • • 建议安装 Go 环境并使用 VS Code 或 GoLand 进行实践