Pues no, en Delphi no se puede hacer esto. Una forma de darle la vuelta al problema podría ser insertar clases abstractas en una unidad común:
Código Delphi
[-]
unit Comun;
interface
type
TClaseAbstracta2 = class;
TClaseAbstracta1 = class
variable: TClaseAbstracta2;
end;
TClaseAbstracta2 = class
variable: TClaseAbstracta1;
end;
Entonces las clases TClase1 y TClase2 las derivas de éstas, cada una ya en su propia unidad:
Código Delphi
[-]
unit Unit1;
interface
uses Comun;
type
TClase1 = class(TClaseAbstracta1)
end;
Código Delphi
[-]
unit Unit2;
interface
uses Comun;
type
TClase2 = class(TClaseAbstracta2)
end;
Las clases abstractas en la unidad común simplemente declaran los métodos a usar con las directivas
virtual y
abstract de manera que no requieres poner nada en la sección
implementation y entonces te queda una unidad bastante pequeña. La implementación real se hace en unidades separadas manteniendo, hasta cierto punto, la separación de clases que originalmente se quería.
Cita:
Empezado por melon
a ver si me pueden ayudar que es bastante urgente
|
Trata por favor de evitar este tipo de requerimientos. Aunque es entendible la urgencia que a veces tenemos, toma en cuenta que aquí cada cual ayuda en su tiempo disponible y sin ninguna obligación.
// Saludos