初識golang-數據類型_函數類型

查看上一篇channel類型請點

        golang中可以用type定義函數類型,定義的類型可以當作參數進行傳遞,廢話不多說,直接上例子

package main

import "fmt"

type FuncType func(int, int) int  //通過關鍵字type定義函數類型

func Add(a, b int) (c int){
	c = a + b
	return
}

func Sub(a, b int) (c int){
	c = a - b
	return
}

//多態,回調函數
func Cacl(a, b int, fun FuncType) (result int) {
	result = fun(a, b)
	return
}

func main() {
	var res int
	res = Cacl(3, 1, Add)
	fmt.Println("a + b = ", res)
	res = Cacl(3, 1, Sub)
	fmt.Println("a - b = ", res)
}

運行結果:

a + b =  4
a - b =  2

查看下一篇切片類型請點

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章