go语言中的匿名函数
生活随笔
收集整理的這篇文章主要介紹了
go语言中的匿名函数
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
匿名函數(shù):沒有名字的函數(shù)
package mainimport "fmt"func main() {/*匿名函數(shù):沒有名字的函數(shù)匿名函數(shù),需要在匿名函數(shù)尾部加上()直接調(diào)用*/func1()// 匿名函數(shù)采用的也是函數(shù)名字 ()實現(xiàn)調(diào)用// 匿名函數(shù)的實現(xiàn)和調(diào)用func() {fmt.Println("Anonymous call back.")}() // 加上了小括號實現(xiàn)了函數(shù)的調(diào)用// 匿名函數(shù)的多次調(diào)用func3 := func() {fmt.Println("func3 call func.")} // 不加返回值的時候直接返回對應(yīng)的函數(shù)變量,供后期調(diào)用func3()// 帶有參數(shù)的匿名函數(shù)調(diào)用, 需要在調(diào)用的括號中加上實參func(arg1, arg2 int) {fmt.Println(arg1, arg2)}(1, 2)// 帶返回值的匿名函數(shù)res1 := func(a, b int) int {return a + b}(1, 2) // 除了增加小括號剩下的和定義的地方是一樣的fmt.Println(res1)// 函數(shù)回調(diào)retValue := opener(20, 10, add)fmt.Println(retValue)fmt.Println("func anonymous demo") }func func1() {fmt.Println("I'm fun1() function.") }func add(a, b int) int {return a + b }func opener(a int, b int, fun func(int, int) int) int {fmt.Println("call func fun.")return fun(a, b) }```總結(jié)
以上是生活随笔為你收集整理的go语言中的匿名函数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: go语言中处处可见的for循环
- 下一篇: 软件测试——0319作业