курсовой проект был по мультисписковой структурой реализованой в файле

для этого мс(мульти-списка) была реализованые такие типы даных
type
TName = string[30];
Tinf = string[254];
TRecRayon = record {Запись данных о районе}
name : TName;
inf : Tinf;
NextElem : Integer;
nextInf : Integer;
end;
TFilerayon = file of TRecrayon;
TRecWec = record {Запись данных о жэке}
name : TName;
inf : Tinf;
NextElem : Integer;
nextInf : Integer;
end;
TFilewec = file of trecwec;
TReculica = record {Запись данных о Улицы}
name : TName;
inf : Tinf;
NextElem : Integer;
nextInf : Integer;
end;
TFileUlica = file of treculica;
TReckvart = record {Запись данных о квартире}
home : TInf;
namber : TInf;
inf : TInf;
kolkom : TInf;
kolkvmetr : TInf;
NextElem : Integer;
end;
TFilekvart = file of TReckvart;
Но неудобство составило при связивание уровней, что нужно писать для каждого типа свою процедуру
procedure Init_FileRayon(var f:TFileRayon);
procedure Init_Filewec(var f:TFileWec);
procedure Init_Fileulica(var f:TFileulica);
procedure Init_Filekvart(var f:TFilekvart);
.....
А теперь вопросы:
Если написать общий тип, для всех уровней ведь многие поля одинакоы,
Type
Trec= Record
....{ общие поля }
Case byte of
1: (...); { поля для 1 уровня }
2: (...); {поля для 2 уровня}
...
end;
, то как это отобразится на запрашиваемой памити, будет расход больше или меньше?
При работе с переменной этого типа, если мы прочитаем что-та в "1", а потом во второе "сигнальное значение", то мы потеряем информацию которая хранилась в первом?
Зы: Volvo извини что создал тему на этом форуме, а не на том что указан на сайте
Сообщение отредактировано: amega -