[C con Clase] Tener una estructura implemetada en un fichero .cpp y .h

Steven Davidson steven en conclase.net
Lun Ene 29 22:42:33 CET 2007


Hola Juan,

El pasado 2007-01-29 16:56:40, juan escribió:

j> Hola a todos. Pues eso, estoy trabajando con visual Studio y al igual que 
j> con als funciones me gustaria implementar una estructura fuera del codigo 
j> principal, es decir, tener  esa estructura en un fichero .cpp y .h 
j> .Seguramente sea una pijada pero no caigo en la cuenta

Bueno. Depende de la implementación que quieras hacer con la estructura. Esto tendría sentido si la estructura contiene funciones. Si es así, entonces la implementación de las funciones se escriben en el ".cpp", mientras que la estructura se pone en el ".h". Por ejemplo,

// algo.h

struct algo
{
  int a, b;

  algo( int aa, int bb );

  int suma() const;
  int resta() const;
  int mult() const;
  int div() const;
};

// algo.cpp

#include "algo.h"

algo::algo( int aa = 0, int bb = 0 ) : a(aa), b(bb)  {}

int algo::suma() const   { return a+b; }
int algo::resta() const  { return a-b; }
int algo::mult() const   { return a*b; }
int algo::div() const    { return a/b; }


Como puedes ver la definición de 'struct' queda en el ".h", pero las definiciones de las funciones miembros están en el ".cpp".


Espero que esto te ayude.

Steven


Más información sobre la lista de distribución Cconclase