golang 传入函数作为参数类型 - Go语言中文社区

golang 传入函数作为参数类型


package main

import "fmt"

#################################################################################################

type shichangdi2 func(string)(int)

可以这样定义函数格式的类型,即相同输入输出值的函数都为此类型

 

同时也可以这样定义函数的额传入传出类型,即:

func test1(hehe shichangdi2){
	var shi string
	hehe(shi)
}
func test2(string2 string)(int) {
	fmt.Println("君不见,黄河之水天上来,奔流到海不复回")
	var shi int
	return shi
}
func test3(string2 string)(int) {
	fmt.Println("君不见,高堂明镜悲白发,朝如青丝暮成雪")
	var shi int
	return shi
}
func main() {
	//a := "10"
	test1(test2)
	test1(test3)
}

输出结果:

这样可以以所有传入传出类型都一样的函数作为参数传入此函数。即test2和test3的传入传出类型一样,但是函数体可以不同。

版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_33875256/article/details/85138339
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2020-06-27 23:17:46
  • 阅读 ( 979 )
  • 分类:Go

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢