Programación General > C/C++

 Clases auto incluidas

(1/1)

josean86:
Hola,
necesito ayuda para crear clases que sigan el siguiente patron:


--- Código: C++ --- class ClaseA{    double a;    ClaseB eltoB;}; class ClaseB{    double b;    ClaseA eltoA;}; int main(){} 
Es decir, que la claseA contenga un atributo que es un objeto de la claseB, y al mismo tiempo que  que la claseB contenga un atributo que es un objeto de la claseA. El codigo que he puesto da error en la linea 3:

main.cc:6: error: ‘ClaseB’ does not name a type

¿alguna idea?¡gracias!

Eternal Idol:
Proba poniendo lo siguiente antes de la clase A:


--- Código: C++ ---class ClaseB; 
Igual no le veo mucha logica a esto ... ni siquiera usando punteros ...

josean86:
Gracias Eternal Idol, he probado lo que me has dicho:

--- Código: C++ ---class ClaseB; class ClaseA{    double a;    ClaseB eltoB;}; class ClaseB{    double b;    ClaseA eltoA;}; int main(){} 
Y tambien me ha dado error, pero diferente: main.cc:6: error: field ‘eltoB’ has incomplete type
Pero he probado a poner punteros (en realidad era eso lo que necesitaba, pero por simplificar habia escrito lo otro), asi que ha quedado:

--- Código: C++ ---class ClaseB; class ClaseA{    double a;    ClaseB* eltoB;}; class ClaseB{    double b;    ClaseA* eltoA;}; int main(){} 
Y con esto a compilado bien :), voy a hacer pruebas a ver si esta todo bien correcto.
Muchas gracias

--------------------------------------------------
Edito
--------------------------------------------------
Ya he hecho las pruebas pertinentes, y funciona todo perfecto, gracias de nuevo

Eternal Idol:
De nadas  :beer:

Navegación

[0] Índice de Mensajes

Ir a la versión completa