Programación General > C/C++

 Añadir archivo.cpp

(1/2) > >>

tousan:
En mi programa uso el "main.cpp" donde tengo todo el codigo.
Sin embargo quiero tener todo mas ordenado y e creado un nuevo archivo "codigo.cpp" en donde utilizo unas funciones.

Quiero usar esas funciones de "codigo.cpp" y llamarlas desde "main.cpp" pero no sé como acerlo. He puesto:
#include "codigo.cpp"
y reconoce el archivo .cpp pero me da error.

Por ej. en codigo.cpp eh puesto esta función:

--- Código: C++ ---void funcion_en_codigo_cpp (){    int a    //esto es un ejemplo} 
y desde main.cpp la llamo y al compilar me sale un error.

¿Cómo se ace?¿que hago mal?gracias

jorgelaprida:
Hola.

En primer lugar seŕa bueno que incluyeras el mensaje de error, que compilador usas y como compilas. Caso contrario no podemos saber que pasa.  :comp:

Suponiendo que que tu código es correcto, es decir que no redeclares variables u otros errores de ese tipo, es posible hacerlo de la manera que describes ( por medio de #include ). Por lo que es probable que tu codigo no sea del todo correcto.
Igualmente, a menos que utilices templates no es lo habitual. Por lo general se incluyen los .h (.hpp, hh, o como sea que tu compilador los reconozca.).

Se le suele indicar al compilador que  archivos .cpp tiene que compilar y enlazar (aunque el compilador no enlace, dejemosló así para empezar).

Si compilas desde un terminal, como en linux con g++ (gcc) u otro similar, tienes que incluir todos los archivos así:


--- Código: Text ---g++ main.cpp archivo.cpp -o nombredelejecutable 
o usar un makefile ( pero no creo que eso busques ).

Si estás con un IDE, debes indicarle que archivos son integrantes del proyecto, o algo parecido dependiendo de que entorno uses.

Saludos.

Leo_Gutierrez:
Aqui hay un error, en codigo.cpp:

--- Código: C ---int a te falta el caracter ';' al terminar.

m0skit0:

--- Cita de: "tousan" ---y desde main.cpp la llamo y al compilar me sale un error.

¿Cómo se ace?¿que hago mal?gracias
--- Fin de la cita ---
Estaría bien que nos especificaras qué error te sale. Además, jamás hace falta incluír un .cpp. Lo que se incluyen son cabeceras (.h).

tousan:
Muchas gracias por vuestra ayuda. Al final de probar y probar lo solucioné. Lo esplico para algún novato como yo. Por cierto, lo he provado tanto en Dev-C++ como en M. Visual C++

Código en "main.cpp":

--- Código: C++ ---#include <windows.h>#include "resource.h" int main(){subrutina_en_codigo_cpp();} 
Código en "resource.h":

--- Código: C++ ---#ifndef RESOURCE_H    #include <windows.h>    void subrutina_en_codigo_cpp();#endif 
Código en "codigo.cpp":

--- Código: C++ ---#include "resource.h" void subrutina_en_codigo_cpp(){    MessageBox(NULL, TEXT("Estás en código.cpp"), TEXT("Correcto"), MB_OK | MB_ICONEXCLAMATION);                      } 
Funciona perfectamente.
Gracias por vuestra ayuda.

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

Ir a la versión completa