[C con Clase] (sin asunto)
Steven Davidson
srd4121 en njit.edu
Jue Mayo 1 18:20:05 CEST 2008
Hola Antonio,
antonio luis sicarelli martinez wrote:
> Saludos a todos los amigos de C++ con Clase.
> Antes que nada quiero felicitar y agradecer a los administradores de
> esta pagina que me ha sacado de muchas dudas y apuros.
De nada; para eso estamos :)
> Ahora bien, la duda que tengo es:
> En algunas ocaciones el codigo de algunos programas que me dejan de
> tarea, empiezo a desarrollarlos y se extiendem demaciado de manera que a
> la hora de revisar el codigo se hace una tarea pesada y estresante.
> Pienso que la solucion seria que en el menú proyecto (Project),
> agregara un nuevo archivo (New file) y separar mi codigo en archivos
> segun la funciónes que desempeñen en el programa.
> Lo que no se es como puedo relacionarlos para que trabajen juntos.
> Como no soy muy bueno explicandome, les dejo un dibujo adjunto para
> explicarme mejor:
> De antemano Muchas gracias por la alluda que me puedan proporcionar.
>
El compilador compila (valga la redundancia) cada fichero fuente por
separado generando un fichero objeto para cada uno. El enlazador es
quien enlaza (otra vez, valga la redundancia) todos los ficheros
objetos, bibliotecas, y cualesquier otro ficheros de recursos generando
un fichero ejecutable o una biblioteca, según lo que se indique.
Al crear un proyecto, toda la información relacionada con la gerencia de
los ficheros ya está encargada. Por lo tanto, el problema que tienes ya
está solucionado al crear un proyecto y al agregar los ficheros fuentes
a ello. Lo que sí debes cuidar es que exista una sola función 'main()'
de entre todos los ficheros fuentes en el proyecto.
Si has hecho todo esto y sigues teniendo problemas, entonces es posible
que estés compilando un solo fichero y no construyendo el proyecto. En
inglés, sería algo como "Build All", "Rebuild All", "Build project", o
"Build <nombre_del_proyecto>". Esta selección fuerza la compilación y
enlazado de todos los ficheros en el proyecto.
Espero haber aclarado el asunto.
Steven
Más información sobre la lista de distribución Cconclase