En Java puedo hacer algo como
derp(new Runnable { public void run () { /* run this sometime later */ } })
y "ejecutar" el código en el método más adelante. Es difícil de manejar (clase interna anónima), pero se puede hacer.
¿Go tiene algo que pueda facilitar que una función / devolución de llamada se pase como parámetro?
containingObject::instanceMethodName
): docs.oracle.com/javase/tutorial/java/javaOO/…Respuestas:
Sí, considere algunos de estos ejemplos:
Reproducir: http://play.golang.org/p/XNMtrDUDS0
Recorrido: https://tour.golang.org/moretypes/25 (cierres de funciones)
fuente
Puede pasar la función como parámetro a una función Go. Aquí hay un ejemplo de pasar la función como parámetro a otra función Go:
Puede probar esto en: https://play.golang.org/p/9mAOUWGp0k
fuente
Aquí está la implementación de "Mapa" de muestra en Go. ¡¡Espero que esto ayude!!
fuente
Aquí hay un ejemplo simple:
fuente
Espero que el siguiente ejemplo proporcione más claridad.
fuente
Sí Go acepta funciones de primera clase.
Consulte el artículo "Funciones de primera clase en Go" para obtener enlaces útiles.
fuente