Sobes.tech
Junior — Middle

Vai Go valodā ir iespējams nodot funkciju kā argumentu citai funkcijai?

sobes.tech AI

Atbilde no AI

Jā, Go valodā funkcijas ir pirmās klases vērtības, tāpēc tās var nodot kā argumentus citām funkcijām, atgriezt no funkcijām un piešķirt mainīgajiem.

Piemērs, kā nodot funkciju kā 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) // Izvadīs 7
}

Tādējādi, Go atbalsta funkcionālo programmēšanas stilu, nododot funkcijas kā parametrus.