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

 

 


Tema destacado: Introducción a Git (Primera Parte)


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  pregunta sobre compilacion y enlace
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: pregunta sobre compilacion y enlace  (Leído 4,148 veces)
flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
pregunta sobre compilacion y enlace
« en: 28 Diciembre 2012, 20:04 pm »

hola amigos ...creo no estar infringiendo las normas del foro con la pregunta que hare, no estudio para programador y estando de vacaciones me dije vamos a leer un libro de c++ "como programar en c++" de deitel...y ustedes son los unicos que me pueden dar una mano...no tengo profes...bue al grano mi pregunta
cap.3.9 pag 128
" el programador de la implemntacion de una clase, responsable de crear una clase LibroCalificaciones reutlizable, crea un archivo de encabezado LibroCalificaciones.h y el codigo fuente LibroCalificaciones.cpp que incluye( mediante #include) el archivo de encabezado y despues compila al archivo de codigo fuente para crear el codigo objeto de LibroCalificaciones. Para ocultar los detalles de la implementacion de las funciones mienbro de LibroCalificaciones, el programador de la implementacion de la clase proporciona al programador del codigo cliente el archivo de encabezado LibroCalificaciones.h (que especifica la interfaz y los miembros de datos de la clase )y el codigo objeto para la clase LibroCalificaciones (que contiene las instrucciones en lenguaje maquina que representan a las funciones miembro de LibroCalificaciones). El programador del codigo cliente no recibe LibroCalificaciones.cpp por lo que desconoce como se implementan las funciones miembros de LibroCalificaiones"
....bueno la pregunta, trate de compilar LibroCalificaciones.h y LibroCalificaciones.cpp pero no se puede porque ninguna tiene la funcion main()...como se hace ?


En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
avesudra


Desconectado Desconectado

Mensajes: 724


Intentando ser mejor cada día :)


Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #1 en: 28 Diciembre 2012, 22:21 pm »

Suponiendo que entiendes el uso de las clases, éstas no pueden ser compiladas así por así sin un main si quieres crear un ejecutable, otro caso sería el de una librería pero no es este el caso. Para compilarlas lo que tienes que hacer es darle uso a esas clases dentro del main.No puedes compilar las clases por si solas sin darles un uso , para que lo entiendas es como compilar funciones solamente, sin usarlas.


En línea

Regístrate en
flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #2 en: 29 Diciembre 2012, 07:18 am »

claro eso es lo que me parecio raro...es que hay un tercer codigo fuente .cpp y ese tiene el main...pero segun lo que dice el libro ese archivo lo maneja el cliente, y nosotros se lo dariamos compilado sin el main  :rolleyes:
En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #3 en: 29 Diciembre 2012, 21:16 pm »

mil gracias a rir3760, ajr784 y  .xAk. ;-) ;-) ;-)
me dijo que leyera sobre programación modular y eso me llevo a leer sobre bibliotecas estáticas....y esa es la solución a tener un archivo.h un archivo.cpp sin la función main()
si a alguien le sirve yusa visual un tutorial
http://msdn.microsoft.com/es-es/library/ms235627(v=vs.80).aspx
« Última modificación: 29 Diciembre 2012, 21:23 pm por flony » En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
0xDani


Desconectado Desconectado

Mensajes: 1.077



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #4 en: 31 Diciembre 2012, 14:47 pm »

Ademas de librerias estaticas tambien hay librerias dinamicas. O creias que la libc tiene un main()?
En línea

I keep searching for something that I never seem to find, but maybe I won't, because I left it all behind!

I code for $$$
Hago trabajos en C/C++
Contactar por PM
flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #5 en: 2 Enero 2013, 00:15 am »

cosas raras...si lo sabia, pero como nunca programe una no se me ocurrio
En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
dooque

Desconectado Desconectado

Mensajes: 170



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #6 en: 9 Enero 2013, 14:58 pm »

Buenas!

Claro que se puede compilar un archivo .cpp (con o sin un .h asociado) y sin la necesidad de crear una "biblioteca de enlace estático" (que es justo lo que el libro te pide).

Lo que se hace, en este caso desde una linea de comando, es:

Código:
c++ -c archivo.cpp -o archivo.o

Con esto se compila "archivo.cpp" a código objeto (máquina) que luego puede ser enlazado a cualquier programa.

PD: Una biblioteca de enlace estático (".a" ".lib") es una colección de código objecto, i.e. un conjunto de archivos ".o"

Saludos.
« Última modificación: 9 Enero 2013, 15:00 pm por dooque » En línea

Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.  -- Kernighan
flony


Desconectado Desconectado

Mensajes: 584



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #7 en: 9 Enero 2013, 18:07 pm »

una pregunta es para visual studio?
y si no es así me enseñarías a hacerlo en visual  ;)
En línea

si un problema no tiene solucion entonces no es un problema...es algo inevitable
dooque

Desconectado Desconectado

Mensajes: 170



Ver Perfil
Re: pregunta sobre compilacion y enlace
« Respuesta #8 en: 9 Enero 2013, 18:41 pm »

Ese es el compilador que trae MinGW (http://www.mingw.org/) para C++.

Nunca he usado Visual Studio, no tengo ni idea que compilador usa!

Saludos.
En línea

Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.  -- Kernighan
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Sobre los bucles en python y la compilacion en este lenguaje
Scripting
ViperX 2 4,094 Último mensaje 15 Marzo 2005, 22:30 pm
por ViperX
esto es a la gente de java...sobre compilacion
Java
Mr.Zeros0 4 3,385 Último mensaje 23 Mayo 2005, 05:26 am
por Ivanchuk
Duda sobre compilación VB
Programación Visual Basic
kabukiman 4 1,873 Último mensaje 25 Junio 2007, 14:07 pm
por kabukiman
forzar enlace con variables y enlace exerno
PHP
DJmixmancar 1 3,096 Último mensaje 17 Agosto 2008, 00:06 am
por DJmixmancar
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines