最近接觸了一下Go語言,新奇的東西很多,不過在函數(shù)這里,和之前接觸的Java不太一樣(可能由于之前學(xué)Java沒怎么用過匿名函數(shù)之類的吧
在Go語言中是钥,有匿名函數(shù)和閉包函數(shù),相關(guān)概念可以看網(wǎng)上的教程缅叠,有很多悄泥,這里看一下一個(gè)新奇的格式
defer func(x,y int) {
a := x+ y
}(5,6)
很簡(jiǎn)單的一個(gè)函數(shù),但是這個(gè)形式比較新奇肤粱,defer是延遲函數(shù)的意思弹囚,后面括號(hào)中的(5,6) 一開始我不明白它的意思
后來弄清楚了,在函數(shù) {}后面跟著()代表運(yùn)行這個(gè)函數(shù)的意思狼犯,那么()中的值也就是這個(gè)函數(shù)所需要的參數(shù)了余寥,在這個(gè)例子中领铐,5和6就是這個(gè)延遲函數(shù)的入?yún)?x,y int)所對(duì)應(yīng)的值了