elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Rompecabezas de Bitcoin, Medio millón USD en premios


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Problema con .h y .cpp
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema con .h y .cpp  (Leído 2,687 veces)
avmiitxe

Desconectado Desconectado

Mensajes: 122


Ver Perfil
Problema con .h y .cpp
« en: 21 Abril 2012, 17:46 pm »

Hola, he visto muchos tutoriales de C++ donde hacian aplicaciones , creaban archivos .h y .cpp
En el main.cpp incluían el .h, pero el .cpp en ninguna parte y funcionaba el programa, yo lo hago igual y me da un error.
¿cómo sabe el compilador dónde está el .cpp si no lo ha incluido en ninguna parte?
Saludos


En línea

armizh

Desconectado Desconectado

Mensajes: 187

His brain caught in a hole...


Ver Perfil WWW
Re: Problema con .h y .cpp
« Respuesta #1 en: 21 Abril 2012, 18:13 pm »

El compilador no lo sabe. Tu tienes por ejemplo los siguientes archivos:
  • Main.cpp
  • HolaMundo.cpp
  • HolaMundo.h
Tu Main.cpp incluye a HolaMundo.h y llama al constructor. En HolaMundo.h solo esta el prototipo. Al compilar, por ejemplo con gcc, compilas Main.cpp con la opcion -c que lo que hace es simplemente no enlazar. Luego compilas HolaMundo.cpp con la misma opcion. Finalmente enlazas los archivos objeto resultantes en la compilacion con el comando ld y (probablemente) la opcion -zmuldefs.
Entonces lo que haces es esto (en la consola):
Código:
g++ -c Main.cpp -o Main.o
g++ -c HolaMundo.cpp -o HolaMundo.o
ld -zmuldefs -o HolaMundo Main.o HolaMundo.o
Y luego ejecutas tu programa HolaMundo.
Como te habras dado cuenta, tu le dices explicitamente al compilador y enlazador que es lo que debe hacer.
Lo que produce confusion, es que los IDEs hacen todo esto por si solos y uno ni se entera! Por eso prefiero usar automake creando  yo mismo los makefiles o pedirle a alguien que construya las ordenes con SCons. Espero se haya entendido.

Saludos.


En línea

Visita mi blog:
http://armizh.10h.us/
Fnx, fork de FreeNOS:
Código
  1. git clone https://github.com/armizh/Fnx
Hamster, Entorno Integrado de Desarrollo C/C++:
Código
  1. git clone https://github.com/armizh/Hamster
avmiitxe

Desconectado Desconectado

Mensajes: 122


Ver Perfil
Re: Problema con .h y .cpp
« Respuesta #2 en: 21 Abril 2012, 21:26 pm »

Esque tengo un problema, me he descargado un juego en C++ que contiene varias archivos .h y .cpp,  en el código veo que en los .cpp se incluyen los .h, pero en ningún lado se incluyen los .cpp.
Entonces qué hago, porque el compilador me da error por eso
En línea

Eternal Idol
Kernel coder
Moderador
***
Desconectado Desconectado

Mensajes: 5.937


Israel nunca torturó niños, ni lo volverá a hacer.


Ver Perfil WWW
Re: Problema con .h y .cpp
« Respuesta #3 en: 21 Abril 2012, 21:43 pm »

Busca el proyecto o makefile, lee la documentacion PRIMERO.
En línea

La economía nunca ha sido libre: o la controla el Estado en beneficio del Pueblo o lo hacen los grandes consorcios en perjuicio de éste.
Juan Domingo Perón
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema BlueZScanner y problema de conexión
Hacking Mobile
Kasswed 3 6,320 Último mensaje 6 Mayo 2006, 22:04 pm
por Gospel
Problema Css o problema con el sidebar
Desarrollo Web
gaboomsk8 6 3,581 Último mensaje 27 Diciembre 2011, 21:56 pm
por gaboomsk8
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines