[Programación] Re: [Programación] Re: [Programació n] headers en c++

HHDG programacion@lugro.org.ar
Mon, 15 Nov 2004 22:16:45 -0300


Pablo wrote:
> Con C++ pasa lo mismo que con C, por CADA clase tenes que tener
> un archivo .h y un .cpp ( .C, .cxx o como te guste <le hablo al compilador
> ;·) > )
>  En el .h pones la declaracion de la clase, y en el .cpp pones la
> implementacion de la clase. Y por ultimo, main.cpp usas la
> clase (o donde la necesites) Un ejemplo:
> 
> Clase: Auto:
> 
> auto.h:
> ------
> #include <stdio.h> // deberias usar iostream y cin cout........
> 
> class Auto {
> public:
>     Auto();
>     ~Auto();
> 
>     void Arrancar();
>     void Acelerar(int cuanto);
> };
> 
> auto.cpp:
> --------
> 
> Auto::Auto()
> {
> }
> 
> Auto::~Auto()
> {
> }
> 
> void Auto::Arrancar()
> {
>     printf("Arranco\n");
> }
> 
> void Auto::Acelerar(int cuanto)
> {
>     printf("Acelerando %d\n", cuanto);
> }
> 
> main.cpp:
> ---------
> 
> #include "auto.h"
> 
> int main()
> {
> 
>         Auto myAuto;
> 
>         myAuto.Arrancar();
>         myAuto.Acelerar(40);
>         myAuto.Acelerar(50);
> 
>         return 0;
> }
> 
> Como creo que se ve, la idea es la misma que en C
> En el .h solo pones las declaraciones de tus funciones (clases) y
> en el .c ( .cpp ) pones las implementaciones de tus
> funciones (clases) y en el main.c (main.cpp) las usas.
> 
>                 Saludos. Pablo.
> 

Gracias por la respuesta y el ejemplo,
Ahora es más fácil preguntar, el tema es que auto.cpp
NO va a compilar, simplemente porque no tiene definida
la clase Auto (observar que auto.cpp no incluye a auto.h)
y Esa es exactamente mi pregunta.