天天看點

go語言之回調函數

函數可以作為其它函數的參數進行傳遞,然後在其它函數内調用執行,一般稱之為回調。

代碼示例:

package main

import "fmt"

func main() {
	// 回調函數示例
	// 使用函數Add作為函數AddOne的參數,然後在AddOne中對函數Add進行調用
	y := AddOne(2, Add)
	fmt.Println("y:", y)
}

// 求和函數
func Add(a int, b int) int {
	return a + b
}

// 增1函數
func AddOne(x int, f func(a int, b int) int) int {
	return f(x, 1)
}
           

運作結果:

y: 3