回调函数(多态应用)

package main
import “fmt”
type FuncType func (int,int) int
//实现加法
func Add(a,b int) int {
return a + b
}
//实现减法
func Minus(a,b int) int {
return a - b
}
//实现乘法
func Mul(a,b int) int {
return a*b
}
//回调函数指的是:函数有一个参数是函数类型,这个函数就是回调函数
//计算器,可以进行四则运算
//多态:多种形态,调用同一个接口,不同的表现,可以实现不同的结果,比如:实现加减乘除、
//先有想法,再实现功能
func Calc(a,b int , fTest FuncType) (result int) {
fmt.Println(“Calc”)
//result = fTest(a,b) //这个函数还没有实现
result = Add(a,b) //Add()必须先定义后,才能调用
return
}
func main ( ) {
a := Calc(1,1,Add)
fmt.Println("a = ",a)
}
//传统的办法不可以实现多态,调用同一个接口可以实现不同的功能

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值