FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Dudas con patrón visitante
Cuando programo usando el patrón visitante la aplicación me genera un error de referencia cíclica, puesto que tengo 2 units cuyas clases se referencian mutuamente.
¿Cómo puedo corregir este problema en Delphi? Gracias adelantadas. |
#2
|
||||
|
||||
En Delphi dos unidades no pueden referenciarse mutuamente desde su sección interface, pero sí desde su sección implementation.
// Saludos |
#3
|
|||
|
|||
Ante todo gracias por tu rápida respuesta, pero cuando programas usando el patrón visita necesitas incluir las units en la interfaz.
Por ejemplo en C++ tampoco puedes hacerlo porque se crearía una refrencia cíclica también, pero existe un recurso. Un fichero tu lo incluyes así. #include "NombreFichero" Pero para evitar la referencia cíclica usarías class NombreFichero Esto es como si hicieras un forward con las clases. Supongo que en Delphi debe haber un recurso parecido para lograrlo. Gracias. |
#4
|
||||
|
||||
En Delphi, como dices, hay un recurso similar usando la directiva {$I archivo.inc}, pero, realmente no tendrás dos unidades distintas, simplemente estás incluyendo un archivo en otro, de forma que es como si el contenido del archivo externo lo hubieras escrito en el punto donde está la directiva.
Por otro lado, este problema puede resolverse definiendo clases abstractas en una unidad:
En esta unidad no implementas nada, pero ya puedes incluirla en las unidades de las clases descendientes:
// Saludos |
#5
|
||||
|
||||
Puedes implementar el Visitor Pattern en una misma unidad sin usar una clase en cada "libreria", ahora no es lo mismo un "uses" de Delphi a un "include" de C; que a proposito en Delphi seria algo como {$i archivo.ext}.
|
#6
|
|||
|
|||
Muchas gracias a todos por la valiosa ayuda. particularmente a Roman
Pude resolver sin problemas Gracias |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Un patrón de diseño heteredoxo puede sarlvarte el pellejo. | AzidRain | La Taberna | 0 | 25-05-2008 02:35:36 |
Patrón | harpo | OOP | 1 | 16-03-2008 23:51:49 |
Patron GoF: Factoría ¿Como y cuando se usa? | Delphius | OOP | 2 | 26-12-2007 06:37:32 |
Patrón observador, attach, notify,update ... | adpa | OOP | 5 | 22-01-2006 01:07:40 |
Patrón de los Informáticos. | obiwuan | Varios | 20 | 10-09-2003 14:44:54 |
|