Sobes.tech
Junior — Middle

Оё дар забони Go имкон дорад, ки функсияро ҳамчун аргумент ба функсияи дигар супоред?

sobes.tech AI

Ҷавоб аз AI

Оё, дар забони Go функсияҳо арзишҳои синфи аввал мебошанд, бинобар ин онҳоро ҳамчун аргумент ба дигар функсияҳо гузоштан, аз функсияҳо баргардондан ва ба тағйирёбандагон таъин кардан мумкин аст.

Масалан, гузоштани функсия ҳамчун аргумент:

package main
import "fmt"

func applyOperation(a, b int, op func(int, int) int) int {
    return op(a, b)
}

func main() {
    sum := func(x, y int) int { return x + y }
    result := applyOperation(3, 4, sum)
    fmt.Println(result) // 7-ро мебарорад
}

Бинобар ин, Go услуби барномасозии функсионалӣ бо гузоштани функсияҳо ҳамчун параметрҳоро дастгирӣ мекунад.