estoy tratando de declarar una rutina de devolución de llamada en C++ de la siguiente manera:¿Qué significa el error "tipo incompleto no permitido"?
void register_rename (int (*function) (const char *current, const char *new));
/*------------------------------------------------------------*/
/* WHEN: The callback is called once each time a file is received and
* accepted. (Renames the temporary file to its permanent name)
* WHAT: Renames a file from the given current name to the specified new name.
*/
Sin embargo, me sale el siguiente error:
line 204: error #70:
incomplete type is not allowed
void register_rename (int (*function) (const char *current, const char *new));
No estoy seguro de cómo corregir esto. Tengo otras rutinas de devolución de llamada similares declaradas en el mismo archivo de encabezado, y no obtengo este error.
Por favor ayuda! :)
resaltado de sintaxis da una pista útil aquí ... – ephemient
También puede encontrarlo más fácil de codificar si el typedef puntero de función: 'typedef int (* fn) (const char *, const char * newStr); void register_rename (fn); ' –
Además,' void register_rename (int (*) (const char *, const char *)); 'es un prototipo equivalente; los nombres no son necesarios – ephemient