不定引數型別函式定義 【args ...type】
package main
import "fmt"
func func01(a byte, args ...int)
func main()
//********輸出*********
len(arg) is 3
a is c
定義函式型別
package main
import "fmt"
func add(a, b int) int
//定義函式型別
type functype func(int, int) int
func main()
//********輸出*********
30**函式
package main
import "fmt"
func add(a, b int) int
func subtr(a, b int) int
type functype func(int, int) int
func calculator(a int, b int, funx functype)
func main()
//******輸出*********
a is 10,b is 20
result is 30
a is 20,b is 10
result is 10
匿名函式
package main
import "fmt"
func main()
result := f1(10, 20)
fmt.printf("result is %d \n", result)
//定義匿名函式並直接呼叫
sum := func(n, m int) (sum int) (10, 40)
fmt.printf("sum is %d \n", sum)
}理解閉包函式的使用
package main
import "fmt"
func test() func() int
}func test2() int
func main() 函式
fmt.println(f1()) // 1
fmt.println(f1()) // 2
fmt.println(f1()) // 3
f2 := test2 // f2指向 test2() int{} 函式
fmt.println(f2()) // 1
fmt.println(f2()) // 1
fmt.println(f2()) // 1
}defer 延時呼叫(在函式中return之後執行)
package main
import "fmt"
func main()
package main
import "fmt"
func main() (a, b)
a = 100
b = 200
fmt.printf("a = %d,b = %d \n", a, b)
// a = 100,b = 200
// a = 10,b = 20
}package main
import "fmt"
func main()
package main
import "fmt"
func c() (i int) ()
return 1
}func main()
//*****分析********
先執行c()函式裡面的 return 1 由於定義c函式時定義了返回值的變數名為i,所以這時的i等於1
defer 函式在return之後執行,也就是在 i=1 被賦值之後執行defer的函式,所以結果為 2
package main
import "fmt"
func main()
func test() (result int) ()
return 1
}func test1() (result int) ()
return t
}//*******分析************
test1() 返回 5 是因為函式定義的返回變數是 result 而 defer 函式中使用的變數是 t 而不是 result
Golang學習筆記 函式
go函式定義格式如下 func function name parameter list return types 例如 func add n1,n2 int int go可以很靈活的建立函式,並作為另外乙個函式的實參 type gettownumberresultfunc func int int...
Golang學習筆記 九 函式
什麼是函式?函式是乙個打包好的語句序列單元,我們將多個語句邏輯定義成為乙個函式,這樣方便我們在程式中多次呼叫,而在golang語言,函式更是一等公民,在我們的開發中隨處可見。乙個函式,由關鍵字func 函式名 形參列表,返回值列表和函式體五個部分組成,格式如下 func name arg int e...
Golang學習筆記 09 函式
函式是基本的 塊,用於執行乙個任務。go 語言最少有個 main 函式。通過函式來劃分不同功能,邏輯上每個函式執行的是指定的任務。函式宣告告訴了編譯器函式的名稱,返回型別,和引數。go 語言標準庫提供了多種可動用的內建的函式。例如,len 函式可以接受不同型別引數並返回該型別的長度。如果我們傳入的是...