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-ն աջակցում է ֆունկցիոնալ ծրագրավորման ոճին՝ ֆունկցիաները որպես պարամետրեր փոխանցելու միջոցով։