概述

应用的场景:在函数外部有很多重复性代码并且重大依赖上下文变量。此时能够在函数外部申明一个函数,专门用来解决重复性的代码。

例子

外部求和函数

package mainimport "fmt"func main() {    var sum func(...int) int // 申明 sum 函数    sum = func(numbers ...int) int { // 定义 sum 函数        total := 0        for _, num := range numbers {            total += num        }        return total    }    fmt.Printf("1 + 2 + 3 = %d\n", sum(1, 2, 3))}// $ go run main.go// 输入如下 /**  1 + 2 + 3 = 6*/

分割我