Вниз
Скачать: CL | DM;

Тип - Вариантная запись. Как сделать поле - дин массив?   Найти похожие ветки 

← →
Каспер ©   (2003-01-09 12:51) [0]

Всем привет!
Вот кусчек кода для того чтоб понятно было
TPData = Record
Case Integer of
0:(x:array of byte);
.......
-выдает ошибку а как избавиться от этого - подскажите другие решения.
Спасибо


← →
Думкин   (2003-01-09 12:53) [1]

А скобки очень нужны?


← →
Д   (2003-01-09 13:12) [2]

Ну тип там был.. я просто подставил чтоб понятно было..


← →
RWolf   (2003-01-09 13:17) [3]

память под запись выделяется статически, поэтому такая конструкция работать не будет. Что до других решений - их можно подсказать, только узнав ответ на вопрос - а для чего нужна такая конструкция?


← →
Д   (2003-01-09 13:24) [4]

Вот для чего ...
есть набор типов
type
t1=array[1..100] of byte
t2=array[1..7] of byte
t3=byte;

я что то оп сети передаю мне нужно передавать только свои структуры... А я в принципе не хочу ограничиваться размерами массива
Мне сейчас надо передать набор из неизвестно скольки четырех байтных конструкции. Вот и нужно предумать как это заделать!



← →
Каспер ©   (2003-01-09 13:29) [5]

а ограничиваться именно как t1 я не хочу :( т.е. придется набирать по 25 элементов - потом отправлять потом опять набирать Х элементов и так Н раз :(
Не верю, Дельфи может лучше :(


← →
RWolf   (2003-01-09 13:32) [6]

динамическое выделение памяти в Дельфи можно делать:
процедурами New / Dispose;
GetMem / AllocMem / FreeMem;
вызовами соответствующих функций WinAPI;
вызовами конструкторов/деструкторов экземпляров классов
и еще тучей разных способов, включая и дин.массивы, так что вовсе необязательно включать в записи именно их. Можно просто выделить нужное кол-во памяти и оперировать указателями на нее.-


← →
Д   (2003-01-09 13:46) [7]

Ну а подробнее?
Вот как мне заделать самое первое сообщение



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

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.01 c
4-62914
Pavel Lechenko
2002-11-28 17:30
2003.01.20
Контролы в DLL - проблемы


1-62496
Palladin
2003-01-09 16:22
2003.01.20
вызов метода потока


14-62834
Сергей Лукьяненко
2003-01-01 21:15
2003.01.20
InterBase


1-62577
Ya Vasya
2003-01-07 20:04
2003.01.20
FreeReport


1-62570
Сергей Макаров
2003-01-11 15:19
2003.01.20
Обработчик ошибок




   Наверх