Sobes.tech
Junior — Middle

Czy w języku Go można przekazywać funkcję jako argument innej funkcji?

sobes.tech AI

Odpowiedź od AI

Tak, w języku Go funkcje są wartościami pierwszej klasy, dlatego można je przekazywać jako argumenty do innych funkcji, zwracać z funkcji i przypisywać do zmiennych.

Przykład przekazywania funkcji jako argumentu:

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) // Wypisze 7
}

W ten sposób, Go wspiera styl programowania funkcyjnego poprzez przekazywanie funkcji jako parametrów.