Go با مثال: توابع

توابع در Go نقش محوری دارند. با چند مثال مختلف با توابع آشنا می‌شویم.

package main
import "fmt"

این تابع دو int می‌گیرد و حاصل جمع آن‌ها را به‌صورت یک int برمی‌گرداند.

func plus(a int, b int) int {

Go بازگشت صریح می‌خواهد؛ یعنی مقدار آخرین عبارت را به‌طور خودکار برنمی‌گرداند.

    return a + b
}

وقتی چند پارامتر پشت سر هم از یک نوع دارید، می‌توانید نام نوع را برای پارامترهای هم‌نوع حذف کنید و فقط برای آخرین پارامتر بنویسید.

func plusPlus(a, b, c int) int {
    return a + b + c
}
func main() {

فراخوانی تابع همان‌طور است که انتظار دارید: name(args).

    res := plus(1, 2)
    fmt.Println("1+2 =", res)
    res = plusPlus(1, 2, 3)
    fmt.Println("1+2+3 =", res)
}
$ go run functions.go 
1+2 = 3
1+2+3 = 6

توابع Go قابلیت‌های دیگری هم دارند. یکی از آن‌ها بازگرداندن چند مقدار است که در ادامه می‌بینیم.

مثال بعدی: .