![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Можно ли описать запись неизвестного заранее размера [D7, XP]
Очень Злой © (2011-10-27 15:29:00)В разных места программы требуются переменные такого и подобных типов:
type TPacket7 = packed record
len:word;
case byte of
0: (buf: packed array[0..27] of byte;);
1: (fch: packed array[0..6] of cardinal);
2: (typepack:byte;);
end;
type TPacket10 = packed record
len:word;
case byte of
0: (buf: packed array[0..39] of byte;);
1: (fch: packed array[0..9] of cardinal);
2: (typepack:byte;);
end;
type TPacket1024 = packed record
len:word;
case byte of
0: (buf: packed array[0..4095] of byte;);
1: (fch: packed array[0..1023] of cardinal);
2: (typepack:byte;);
end;
var
a:TPacket10;
b:TPacket7;
...
и т.д.
есть ли в Д7 возможность сделать одно описание, а затем при указании типа переменной указывать и размерность, но чтобы описание записи было одно?
Сергей М. (2011-10-27 15:36:00) [21]> при указании типа переменной указывать и размерность
Накой шиш ?
Компилятор на то компилятором и поставлен чтобы самостоятельно и без лишних вопросов расчитывать размер памяти, отвоводимой под переменную конкретно указанного типа.
> чтобы описание записи было одно
Одно описание - один и размер.
Медвежонок Пятачок (2011-10-27 15:35:00) [22]PWord вместо рекордов для передачи параметра и приведение к нужному типу на принимающем конце в зависимости от значения PWord^