Tengo una función que tiene una entrada de puntero de función. Puedo darle fácilmente nombres de funciones como entrada. Pero me pregunto si es posible definir una función como entrada. Por ejemplo, tengo una función como esta;
void exampleFunction ( void (*functionPointer)( void ) ) { codes ... }¿Puedo dar una entrada como esta dentro de los corchetes? Por ejemplo;
exampleFunction( void helloFunction ( void ) { printf("Hello"); } );Da un error de compilación como este, pero ¿hay alguna otra forma de hacerlo?
Esto es imposible en C.
En C++, puede usar una expresión lambda:
exampleFunction([](){ std::cout << "Hello"; });