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
Ir a la versión completa