Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.09.03;
Скачать: CL | DM;

Вниз

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

 
I.N.   (2006-08-15 11:14) [0]

Добрый день!

Возможно ли в Дельфи использовать динамический массив как возвращаемое значение функции или как var- параметр? если я пишу
function proc(directory:String) : Array of String;

то компилятор вобще ругается на это. А такая декларация:

procedure proc(directory:String; var result:Array of String );

проходит но к сожалению использовать этот массив в процедуре невозможно так как вызов setlength(result,5) не компилируется - несовместимость типов! более того если я объявляю локальную переменную y : Array of String; и присваиваю y:= result; получаю почему то опять несовместимость типов? как жа мне быть, возжможно ли в дельфи вообще использовать динамический массив в качестве возвращаемого параметра?

спасибо за ответы.


 
Сергей М. ©   (2006-08-15 11:17) [1]

type
 TMyDynArray = Array of String; //объявление типа

...

function proc(directory:String) : TMyDynArray; //использование типа


> setlength(result,5) не компилируется - несовместимость типов


Потому что это не динамический массив, а открытый массив.
А это две разные разницы.


 
tupoy   (2006-08-15 11:36) [2]

а зачем вообще использовать массивы, когда есть замечательный класс TStringList


 
Elen ©   (2006-08-15 12:03) [3]


> tupoy

Не любиш ты память экономить


 
Германн ©   (2006-08-15 13:19) [4]


> Elen ©   (15.08.06 12:03) [3]
>
>
> > tupoy
>
> Не любиш ты память экономить
>

Ну-ка, ну-ка поподробнее пожалуйста.


 
Elen ©   (2006-08-15 13:39) [5]


>  TStringList

В зависимости от массива определенного самим, TStringList может больше занимать памяти


 
Германн ©   (2006-08-15 13:45) [6]


> В зависимости от массива определенного самим, TStringList
> может больше занимать памяти

Ещё подробнее плиз.



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

Текущий архив: 2006.09.03;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.049 c
15-1154843990
kilonet
2006-08-06 09:59
2006.09.03
связь с сервером НЕ через интернет


2-1155496909
Chort
2006-08-13 23:21
2006.09.03
сжать базу


2-1155543110
lllEl
2006-08-14 12:11
2006.09.03
QuickReport+4 блока данных


15-1154932290
tButton
2006-08-07 10:31
2006.09.03
закулисье)


2-1155278166
MSVN
2006-08-11 10:36
2006.09.03
Список запущенных процессов