Function ဆိုတာ တာဝန်တစ်ခုကို နာမည်ပေးပြီး ပြန်အသုံးပြုနိုင်အောင်ထားတဲ့ code block ပါ။ Go မှာ input parameters နဲ့ return type ကိုရှင်းရှင်းလင်းလင်းရေးရတာကြောင့် function တစ်ခုဘာလုပ်မလဲ ဖတ်ရလွယ်ပါတယ်။
go
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func divide(a int, b int) (int, bool) {
if b == 0 {
return 0, false
}
return a / b, true
}
func main() {
fmt.Println(add(42, 13))
result, ok := divide(10, 2)
fmt.Println(result, ok)
}add function က integer နှစ်ခုယူပြီး integer တစ်ခုပြန်ပေးပါတယ်။ divide က result နဲ့ success status နှစ်ခုကိုတစ်ခါတည်း return ပြန်ပေးတာပါ။
You should see
55 5 trueInfo
Go functions တွေက multiple return values ပေးနိုင်တာကြောင့် result + error ပုံစံရေးရတာ သဘာဝကျပါတယ်။