|
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.