如下代码:
package main
import (
"errors"
"fmt"
)
//相比其他静态语言,go语言的函数有很多亮点
//函数几个要素,1.函数名,2.参数 3.返回值
//函数第一种定义方法
func add(a, b int) int { //类型一致可以如此简写
return a + b
}
//函数的第二种定义方法
func add2(a, b int) (sum int) {
sum = a + b
return sum
}
//函数的第三种定义方法
func add3(a, b int) (sum int) {
sum = a + b
return
}
//函数的第四种定义方法
//被除数等于0,要返回多个值 - 一个非常有用的特性
func div(a, b int) (int, error) {
var result int
var err error
if b == 0 {
err = errors.New("被除数不能为0")
} else {
result = a / b
}
return result, err
}
//函数的最常用定义方法
func div2(a, b int) (result int, err error) {
if b == 0 {
err = errors.New("不能去除0")
} else {
result = a / b
}
return
}
func main() {
result, err := div2(12, 0)
if err != nil {
fmt.Println(err)
} else {
fmt.Println(result)
}
}
注意:以上是几种定义函数的常用用法,如果觉得太多,也要把第五种搞懂。