elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado:


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  Duda con implementación de clases de UML a C++
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Duda con implementación de clases de UML a C++  (Leído 2,914 veces)
novalida

Desconectado Desconectado

Mensajes: 160


Ver Perfil
Duda con implementación de clases de UML a C++
« en: 23 Septiembre 2011, 18:56 pm »

Hola!
Soy muy principante en la programación orientada a objetos ya que siempre había utilizado programación estructurada.
Ahora, que quería centrarme en UML y POO dadas sus vetnajas me encuentro con algún que otro problema en cuanto a la implementación a partir de un diseño.

Mi ejemplo:
Tengo dos clases A y B, las cuales mantienen una relación de asociación de A a B de 1:N respectivamente.

Siguiendo el "manual" para implementar diagramas de clase UML a C++ debería implementar en cada una de las clases una instancia de la otra clase, quedando así:

Código:

class A
{
    int variable1;
    vector <B> variableB;
}

class B
{
    int variable2;
    A variableA;
}


Ahora el problema que me encuentro es que la implementación de la clase A en B tiene que ser un puntero a un objeto de tipo "clase A", no como se me indica por "manual".

Por otro lado no entiendo por qué razón debería (aunque quizás no sea obligatorio) incluir la clase B una instancia de la clase A.

Además, ¿no se produciría un bucle o error de compilación al asignar valores a cada objeto A contenido B?

He buscado información en internet al respecto pero no logro solventar la duda de la mejor manera de implementar el diseño.


Quizás no me he explicado demasiado bien, pero si se neceista más información, por favor, pedídmela e intentaré explicarme de la manera que se me pida :)

Muchas gracias de antemano y un saludo.


En línea

alexg88

Desconectado Desconectado

Mensajes: 3


Ver Perfil
Re: Duda con implementación de clases de UML a C++
« Respuesta #1 en: 23 Septiembre 2011, 19:37 pm »

Tienes que usar punteros como bien has indicado.

Código
  1. class A
  2. {
  3.    int variable1;
  4.    vector <B*> variableB;
  5. }
  6.  
  7. class B
  8. {
  9.    int variable2;
  10.    A  *variableA;
  11. }
  12.  
  13.  

Tampoco es obligatorio (como has dicho) poner una referencia de la clase A a la clase B. Todo depende de para que se vaya a usar.

No se producen errores si usas punteros, pero sería imposible hacerlo sin punteros.


En línea

novalida

Desconectado Desconectado

Mensajes: 160


Ver Perfil
Re: Duda con implementación de clases de UML a C++
« Respuesta #2 en: 23 Septiembre 2011, 22:16 pm »

hola alexg88 , muchas gracias por contestar.

Entonces, ¿instanciar un objeto de cada clase es opcional? (En nuestro caso, un puntero a cada tipo de objeto).
Lo pregunto por si tendría alguna utilidad real o algún ejemplo en el que lo más correcto sería hacerlo de esa manera.
Por último, soy incapaz de compilar dos clases haciendo que cada una contenga a la otra. Que sólo una contenga un puntero a la otra sí, pero que cada una de ellas contnga un puntero a un objeto de la otra clase soy incapaz, dándome el error CLASEA does not name a type.
¿Sería posible implementar eso o es que puedo estar haciendo algo mal?
Incluyo la cabecera de cada clase en la declaración de la otra pero no consigo nada :S
En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Duda de implementación en lenguaje ensamblador
ASM
Hipeople 8 6,657 Último mensaje 8 Junio 2009, 20:20 pm
por Eternal Idol
Una duda que tengo sobre la separacion de interfaz de la implementacion
Programación C/C++
meoit ARG 4 2,419 Último mensaje 1 Mayo 2014, 07:29 am
por Vaagish
Duda sobre la implementación de OpenVPN
GNU/Linux
WHK 2 2,189 Último mensaje 9 Julio 2016, 21:24 pm
por WHK
Duda con implementacion mvc
PHP
d91 0 2,085 Último mensaje 16 Agosto 2016, 15:25 pm
por d91
Patron MVC duda de implementación...
Programación General
digimikeh 6 3,035 Último mensaje 29 Mayo 2019, 19:31 pm
por Daghdha
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines