Golang : How to make function callback or pass value from function as parameter?

There are times we need to evaluate a function and pass the evaluated value as parameter to a function. In Golang, this is known as function callback. Below is an example of function callback in action.

 package main

 import "fmt"

 func square(f func(int) int, x int) int {
 return f(x * x)

 func main() {

 // call back functions for 2 times
 fmt.Printf("%v\n", square(func(i int) int {
 return i * i
 }, 2))


Sample output :


Reference :


By Adam Ng

IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.