Вниз
Скачать: 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.012 c
6-62711
ivankor
2002-11-22 03:08
2003.01.20
Возможно ли?


6-62702
Alek_1
2002-11-19 01:18
2003.01.20
WebBrowser


14-62847
Неумник
2002-12-29 14:44
2003.01.20
Стимуляторы для мозгов


4-62900
Monster_Kot
2002-12-02 07:37
2003.01.20
Послать сообшение (как командой Net Send)?


14-62841
Supreme
2003-01-02 22:41
2003.01.20
Звонки по телефонам начинающимися на 8 800




   Наверх