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

Динамический массив   Найти похожие ветки 

 
Dionnis   (2004-10-28 14:20) [0]

Здравствуйте уважаемые! У меня вопрос такой:
Объявляю тип - запись:

type TTreeInfo = record
   ID          : longint;
   Name        : string;
   ParentID    : longint;
   Priority    : longint;
   Deleted     : boolean;
   Description : string;
 end;

Затем в классе TTree пишу следующее:

type TTree = class
   ReasonLaw   : array of TTreeView;
       .
       .
       .
   procedure LoadFromDB(Arr: array of TTreeInfo);
 end;  

В методе класса TTree.LoadFromDB(...; Arr: array of TTreeInfo; ...);
Пытаюсь задать размер массива Arr: SetLength(Arr, <переменная>),
На что мне компилятор говорит о несовместимости типов. Т.е. массив Arr не хочет вомпринимать в процедуре SetLength.
Если же подставить вместо Arr Tree.ReasonLaw, то всё нормально, в чём дело?


 
Anton_K ©   (2004-10-28 14:31) [1]

Массив Arr тут открытый, а не динамический.


 
Dionnis   (2004-10-28 14:35) [2]

> Массив Arr тут открытый, а не динамический.

В смысле открытый? Размер массива не задан изначально.


 
Silver Alex ©   (2004-10-28 14:39) [3]

делай так

type
TTreeInfo = record
  ID          : longint;
  Name        : string;
  ParentID    : longint;
  Priority    : longint;
  Deleted     : boolean;
  Description : string;
end;
MyArray=array of TTreeInfo;
...
  ReasonLaw   : MyArray;
  procedure LoadFromDB(Arr: MyArray);


 
Dionnis   (2004-10-28 14:51) [4]

О! Заработало! Спасибо бальшое! А всё таки что значит "открытый" массив?


 
Dionnis   (2004-10-28 14:50) [5]

О! Заработало! Спасибо бальшое! А всё таки что значит "открытый" массив?


 
Dionnis   (2004-10-28 14:51) [6]

О! Заработало! Спасибо бальшое! А всё таки что значит "открытый" массив?


 
Amoeba ©   (2004-10-28 14:57) [7]


> А всё таки что значит "открытый" массив?

Смотри справку на Open arrays или читай учебник.


 
Добрый дядька ©   (2004-10-28 15:12) [8]

Нет такого понятия "открытый массив".
Есть понятие "Открытый массив параметров".



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

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



Память: 0.46 MB
Время: 0.024 c
1-1099211684
Arnold
2004-10-31 11:34
2004.11.14
Как ограничить ввод в TEdit.


1-1099309330
Igor_
2004-11-01 14:42
2004.11.14
CONSOLE APPLICATION


14-1097962722
Кто---то
2004-10-17 01:38
2004.11.14
Есть ли стандартный Диалог с КомбоБоксом ?


3-1097500706
AleXqwq
2004-10-11 17:18
2004.11.14
MySQL component for Delphi, not trial


14-1098708590
Mihey_temporary
2004-10-25 16:49
2004.11.14
Записать с телека - техническая сторона




   Наверх