Variadic functions
ဆိုတာက arguments တွေအများကြီးထက်ထက်ထည့်ပီးခေါ်နိုင်တဲ့ function ကိုပြောတာပါ။
ဥပမာ မြင်သာအောင်ပြောရမယ်ဆိုရင် |
|
package main |
|
import "fmt" |
|
ဒီ function မှာဆိုရင် ကြိုက်သလောက် numbers |
func sum(nums ...int) { fmt.Print(nums, " ") total := 0 |
ဒီ function ထဲမှာဆိုရင်တော့ |
for _, num := range nums { total += num } fmt.Println(total) } |
func main() { |
|
Variadic function ကိုအသုံးပြုမယ်ဆိုရင် ပုံမှန် individual arguments တွေနှင့်ခေါ်ပီးအသုံးပြုနိုင်ပါတယ်။ |
sum(1, 2) sum(1, 2, 3) |
slice ထဲမှာ multiple args ရှိပီးသားဆိုရင်
အဲ့ slice တွေကိုဘဲ variadic function နှင့်
|
nums := []int{1, 2, 3, 4} sum(nums...) } |
$ go run variadic-functions.go [1 2] 3 [1 2 3] 6 [1 2 3 4] 10 |
|
Another key aspect of functions in Go is their ability to form closures, which we’ll look at next. |
နောက်ဥပမာ: Closures.