跳到主要内容

函数声明

如何声明一个具有明确输入与输出的函数?​

  • function: 一段可重复调用的代码,可以接收参数并返回结果;
  • 声明结构: func 关键字后依次写函数名、参数列表、返回类型和函数体;
  • 参数: 调用方传给函数的输入值,每个参数都具有确定类型;
  • 返回值: 函数交回调用方的结果;没有返回值时省略返回类型;
// add 接收两个 int 参数并返回一个 int
func add(a int, b int) int {
return a + b
}
result := add(2, 3) // 调用时按顺序提供实参,得到返回值 5
println(result)

参数类型简写是什么, 何时可以省略类型?​

  • parameter type elision: 参数类型省略;相邻参数类型相同时,可只在最后一个参数后声明类型;
// a, b int 表示 a 和 b 都是 int
func add(a, b int) int {
return a + b
}
  • 签名阅读: func add(a, b int) int 的逗号把两个同类型输入并列,括号后的 int 是唯一返回值类型;类型简写不改变参数数量或传递方式;
  • 调用匹配: add(1, 2) 合法,少一个参数或传入不兼容类型都会在编译时被拒绝;