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

Вопрос по синтаксису   Найти похожие ветки 

 
Демонов Е.В. ©   (2003-04-08 16:04) [0]

Редко возникала у меня нвдобность в использовании констант- но вот возникла и .....

Код

type
TParam=record
ParamName:Char;
Value:String;
end;

TParamArray=Array [1..3] of TParam;

Const

Params:TParamArray=((ParamName:"p";Value:""),(ParamName:"m";Value:"*.*"),(ParamName:"f";Value:"-"));

Все работает, но вот если
TParamArray=Array of TParam;
То компилятор ругается . как ?????????


 
Skier ©   (2003-04-08 16:08) [1]

>Демонов Е.В.

> как ?????????

Никак ! Энто будет динамический массив.
Можешь его проинциализировать в цикле...
for ii := Low(ParamArray) to High(ParamArray) do bla-bla-bla...


 
MityaP ©   (2003-04-08 16:17) [2]

Для динамического массиво нельзя задать константу...
Если надо, что бы при запуске проги, динамический массив содержал нужное, объяви переменную Params и добавь секцию Initialization в конце модуля (перед end.), например так:

unit MyParams;

interface
type
TParamArray = Array of TParam;
var
Params: TParamArray;

implementation

procedure AddParametr(AParamName, AValue: string);
begin
SetLength(Params, Length(Params) + 1);
Params[Length(Params) - 1].ParamName := AParamName;
Params[Length(Params) - 1].Value := AValue;
end;

initialization
SetLength(Params, 0);
AddParametr("p", "");
AddParametr("m", "*.*");
AddParametr("f", "-");
//Секция initialization выполняется при первом обращении
// к модулю... То есть во время создания Application
end.


 
Palladin ©   (2003-04-08 16:27) [3]

динамический массив в const это нонсес....



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

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



Память: 0.45 MB
Время: 0.012 c
14-54876
VID
2003-03-29 02:17
2003.04.17
Написание музыки из сэмплов.


1-54551
Опус
2003-04-06 10:23
2003.04.17
Отчеты. Подскажите как поместить CheckBox или ...


4-54943
RDA
2003-02-18 09:30
2003.04.17
Развернутое окно только с кнопкой Close


7-54906
Victor52
2003-02-25 16:27
2003.04.17
Генерация частот на звуковую плату.


14-54820
FLIZ
2003-03-28 20:00
2003.04.17
Аксесс-97 после переустановки не запускается :-((




   Наверх