Go语言之函数签名

使用type关键字进行,

函数类型变量也可以作为函数的参数或返回值。

我觉得属于高级技巧了,初学者可能需要很多代码实现的,

高级的就可以更通用的实现。

package main

import "fmt"

func add(a, b int) int {
	return a + b
}

func sub(a, b int) int {
	return a - b
}

type Op func(int, int) int

func do(f Op, a , b int) int {
	return  f(a, b)
}

func main() {
	a := do(add, 1, 2)
	fmt.Println(a)
	s := do(sub, 1, 2)
	fmt.Println(s)

	f := add
	sum := f(3, 5)
	fmt.Println(sum)

}

  

猜你喜欢

转载自www.cnblogs.com/aguncn/p/10499317.html
今日推荐