Go 语言函数全解析:从基础定义到高级特性
函数是 Go 语言的核心组成单元,不仅是代码复用的基础,还支撑着匿名函数、闭包、递归等高级编程范式。本文将从函数的基础定义出发,逐步讲解嵌套调用、不定参数、匿名函数、闭包、defer 延迟调用与递归等特性,帮你全面掌握 Go 语言函数的使用技巧。
函数的基础定义与使用
基本概念
函数是将一段代码逻辑封装起来的复用机制,通过 func 关键字定义,可接收参数并返回结果。Go 语言中函数的基本语法结构如下:
func 函数名 (参数列表) (返回值列表) {
函数体
}
下面是一个简单的示例,定义两个自定义函数实现'吃饭'和'睡觉'的逻辑调用:
package main
import "fmt"
func main() {
eat()
sleep()
}
func eat() {
fmt.Println("吃饭")
}
func sleep() {
fmt.Println("睡觉")
}
在定义函数时,形参与实参的个数与类型都要保持一致,否则编译器会报错。
返回值处理
Go 语言支持函数返回单个或多个值,定义返回值时需指定类型,通过 return 语句返回结果。如果返回值较多,甚至可以不写变量名直接返回。
// 定义带返回值的函数,计算两数之和
func TestSum(a int, b int) int {
var sum int
sum = a + b
return sum
}
func main() {
var num1, num2 int
fmt.Println("请输入第一个数:")
fmt.Scanf("%d", &num1)
fmt.Println("请输入第二个数:")
fmt.Scanf(, &num2)
result
result = TestSum(num1, num2)
fmt.Println(, result)
}

