что-то я всё не могу понять систему работы с классами
есть такая иерархия классов
- Код: Выделить всё
- TBase = class
 private
 protected
 FName:String;
 FID:integer;
 FType:TInterfaceBase;
 public
 end;
 TTributarBase = class (TBase)
 private
 protected
 FRx,FTx:TBase; //исп. как указатель либо на TTributarBase, либо на TVCBase
 public
 end;
 TVCBase = class(TBase)
 private
 protected
 FMember:TBase; //исп. как указатель
 public
 end;
 TSTM1 = class
 private
 ...
 protected
 FVCRx: array [0..62] of TVCBase; //эти классы все создаются
 FVCTx: array [0..62] of TVCBase; //эти классы все создаются
 public
 end;
 TLine = class
 private
 ...
 FSTM1:TSTM1;//создаётся класс
 ...
 public
 end;
 TCross = class
 private
 FLineA,FLineB:TLine;//тоже создаётся
 public
 end;
вопрос в струдию!!!
у нас допустим дан элемент FBase от TBase, по элементу FType в нём нам известно что он отностился к одному из... либо FLineA, либо FLineB
есть указатель aLine:TLine;
получаем указатель на соответствующий класс
aLine:=TLine(FBase)
при обращении к методу либо свойству класса всё работает номально
i:=aLine.ID
но если сделать так, то вылетает
i:=aLine.FSTM1.FVCRx[5].ID





