C/Visual C - puntos h

 
Vista:

puntos h

Publicado por Itxaso (2 intervenciones) el 22/10/2003 17:51:23
Porque se declara el prototipo de una funcion en un .h
EJP:
extern void recuperar_eeprom (void);
Y luego en un .C a parte de incluir ese .h se declara otra vez el prototipo de esta funcion pero de esta otra manera
public void recuperar_eeprom (void);
¿Hace falta declarar dos veces?¿o hay alguna manera de declarar una sola vez?
Muchas gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:puntos h

Publicado por fernando.gomez (1603 intervenciones) el 23/10/2003 02:19:19
Lo que pasa es que si declaras como extern, indicas al compilador que no se apure por la implementación de la función sino hasta el momento de enlazado (paso que sigue a la compilación).

En fin, lo que yo hago normalmente, es agrupar mis funciones (o clases, estructuras, etc) en archivos header (.h) comunes. Luego, en mis CPPs sólamente incluyo los archivos comunes.

Sin embargo, debes de tener en cuenta que puedes necesitar una función (común) en otra función común. Para ello, empleas #ifdef ... #endif o #if defined ... #endif. O acomodas muy, pero muy bien tus funciones dentro de tu archivo de declaración de funciones comunes.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar