最近接触了一下Go语言,新奇的东西很多,不过在函数这里,和之前接触的Java不太一样(可能由于之前学Java没怎么用过匿名函数之类的吧
在Go语言中,有匿名函数和闭包函数,相关概念可以看网上的教程,有很多,这里看一下一个新奇的格式
defer func(x,y int) {
a := x+ y
}(5,6)
很简单的一个函数,但是这个形式比较新奇,defer是延迟函数的意思,后面括号中的(5,6) 一开始我不明白它的意思
后来弄清楚了,在函数 {}后面跟着()代表运行这个函数的意思,那么()中的值也就是这个函数所需要的参数了,在这个例子中,5和6就是这个延迟函数的入参(x,y int)所对应的值了