Hola, que tal.
Tengo una duda. Defino un struct dentro de una clase.
Puedo yo dentro de otra clase definir otro struct que en su interior posea al struct de la primera clase?
Como podría realizarlo.
Cualquier idea es válida. Muchas Gracias.
| ||||
Respuesta: Utilizacion de struct c++
Código C++:
Ver original Última edición por vangodp; 07/12/2013 a las 01:18 |
| ||||
Respuesta: Utilizacion de struct c++ Debo de decirte que es escaso el material sobre sobre composición en internet lo que esta por ahi me deja mas dudas que me ayudan a entender sobre eso. Si encuentras algo bueno favor enviadme un mail XD |
| ||||
Respuesta: Utilizacion de struct c++ Bueno eh estado leyendo sobre el tema y así por encima va mas o menos así XD Agregación y composición en lo que se refiere a código es lo mismo(O bien no se diferencia uno de otro). Pero agregación y composición son diferentes conceptos. Composición: Si un objeto A esta esta compuesto por un segundo objeto B ya sabemos lo que es..."composición". El tiempo de vida del objeto B esta condicionado por el tiempo de vida del objeto A (B no existe sin A). Un coche esta compuesto por ruedas, puerta motor(Un coche tiene un....). Si elimino el todo sus partes también dejan de existir o no servirían. ¿Queda claro lo que es composición? :D Agregación: Es cuando agregamos varios objetos B, C, D... para formar un objeto A. Ejemplo: agregamos una pantalla, un ratón, un disco duro y muchos mas objetos para formar un ordenador. Se puede decir que ordenador tiene una pantalla, tiene un disco duro, tiene un ratón...(Tiene un/uno/una...) ¿Queda claro que es agregación? Bien, miremos otros aspectos que diferencian agregación de composición: El tiempo de vida del los objetos B, C o D no esta condicionado por el tiempo de vida del objeto A (B, C, D... siguen existiendo aun que A desaparezca). Pantalla, ratón y teclado siguen existiendo aun que eliminemos ordenador. El Todo no influencia en las partes. Lo que se refiere a código es lo mismo, es el concepto como dije antes el que varia. Mas o menos ya sabemos cual elegir en determinado caso. Si se supone que la programación orientada a objeto se basa en re-aprovechar el código hay que tener bien claro este concepto por que imaginemos que creamos una clase que depende de muchas otras, o que no funcione sin muchas clases asociadas seria una ruina re-aprovechar algunos códigos. Deberías leer algo sobre uml o conceptos de POO, y por supuesto yo también XD Saludos y mucha suerte! XD PD: Asociacion: Es la relación entre clases(Una clase depende de otra). Agregación/Composición es un tipo derivado de esa relación. Última edición por vangodp; 07/12/2013 a las 04:08 |
| |||
Respuesta: Utilizacion de struct c++ Sólo se me ocurre que puedas definir una instancia de la estructura creada en la primera clase. Algo como:
Código:
¿Exáctamente qué quieres conseguir? Es que una vez definido un struct, no tienes que volver a definirlo. Otra cosa es que te interese tener un struct igual en la segunda clase, en ese caso lo vuelves a crear pero será un miembro diferente al primero. En fin, también estoy espeso y no sé cual es realmente tu idea.class A { public: struct stA { //............ }; }; class B { struct stB { class A::stA instancia; }; }; Volviendo sobre la idea, lo más fácil es definir el struct al principio y luego incluir instancias del mismo en cada clase:
Código:
struct S { //............... }; class A { S cA; }; class B { struct stB { S cB; }; }; |
Etiquetas: |