函數類型(c語言中函數指針)

在Go語言中,函數也是一種數據類型,我們可以通過type來定義它
它的類型就是所有擁有相同的參數,相同的返回值的一種類型
package main
import “fmt”
func Add(a,b int) int {
return a+ b
}
func minus (a,b int) int {
return a - b
}
//函數也是一種數據類型,通過type給一個函數類型起名
//FuncType是一個函數類型

type FuncType func (int,int) int //沒有函數名字,沒有{}

func main ( ) {
var result int
result = Add(1,2) //傳統調用方法
fmt.Println("result = ",result)
//聲明一個函數類型的變量,變量名叫fTest
var fTest FuncType
fType = Add //是變量就可以賦值
result = fTest(10,20) //等價於Add(10,20)
fmt.Println("result2 = ",result)

fTest = Minus//傳統調用函數通過函數名來調用,現在通過變量來調用,可以實現多態
result = fTest(10,5)//等價於Minus(10,5)
fmt.Println("result3 = ",result)

}

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