Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.11.19;
Скачать: CL | DM;

Вниз

Внутреннему класу узнать параметр класа в который он входит   Найти похожие ветки 

 
zorik ©   (2006-10-11 11:06) [0]

Скажем есть клас для сохранения чего-либо в специфический формат. Формат сохранения - текстовый файл, который состоит из некого количества блоков. Существует еще такая спецификация как версия

Блок общий
 TBlock = class
 private
   FShortDescr: String;
 public
   constructor Create;
   destructor Destroy; override;
   property ShortDescr: String read FShortDescr write FShortDescr;
   procedure Draw; virtual; abstract;
 end;

constructor TZLasBlock.Create;
begin
 inherited Create;
 FShortDescr :="";
end;


Блок "Версия"
 TVersBlock = class(TBlock)
 private
 public
   constructor Create;
   destructor Destroy; override;
 end;


общий клас
 TZFile = class
private
 FVers: Integer;
 FVersBlock: TVersBlock;
...
public
 constructor Create;
...
end;

constructor TZFile Create;
begin
 inherited Create;
 FVers := 0;
 FVersBlock := TVersBlock.Create;
end;


в реализации метода TVersBlock.Create нужно реализовать следущее:
case FVers of
 1: FShortDescr := "Версия 1.0";
 ...


но о версии TVersBlock не знает


 
jack128 ©   (2006-10-11 12:26) [1]

zorik ©   (11.10.06 11:06)
но о версии TVersBlock не знает

ну передай в конструктор TVersBlock эту версию, в чем проблема?


 
zorik ©   (2006-10-11 14:23) [2]

Проблему решил. Проблема в том, что разные блоки, будут формироватся в зависимости от многих параметров, не только от версии



Страницы: 1 вся ветка

Текущий архив: 2006.11.19;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.03 c
15-1162188972
Cyrax
2006-10-30 09:16
2006.11.19
Lingvo-перевод на осевом уровне


1-1160488144
Dush
2006-10-10 17:49
2006.11.19
VB в Delphi (AndAlso и OrElse)


2-1162462779
pasha_golub
2006-11-02 13:19
2006.11.19
Как поймать сообщение посланное для Application.Handle?


2-1162193174
STARiK
2006-10-30 10:26
2006.11.19
Удаленное изменение структуры dbf


15-1162317007
Jorjer
2006-10-31 20:50
2006.11.19
Спасём Caps Lock!