![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Динамические массивы [D6]
I.N. © (2006-08-15 11:14:00)Добрый день!
Возможно ли в Дельфи использовать динамический массив как возвращаемое значение функции или как 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 13:45:00) [1]
> В зависимости от массива определенного самим, TStringList
> может больше занимать памяти
Ещё подробнее плиз.
Elen (2006-08-15 13:39:00) [2]
> TStringList
В зависимости от массива определенного самим, TStringList может больше занимать памяти
Германн (2006-08-15 13:19:00) [3]
> Elen © (15.08.06 12:03) [3]
>
>
> > tupoy
>
> Не любиш ты память экономить
>
Ну-ка, ну-ка поподробнее пожалуйста.
Elen (2006-08-15 12:03:00) [4]
> tupoy
Не любиш ты память экономить
tupoy (2006-08-15 11:36:00) [5]а зачем вообще использовать массивы, когда есть замечательный класс TStringList
Сергей М. (2006-08-15 11:17:00) [6]type
TMyDynArray = Array of String; //объявление типа
...
function proc(directory:String) : TMyDynArray; //использование типа
> setlength(result,5) не компилируется - несовместимость типов
Потому что это не динамический массив, а открытыймассив.
А это две разные разницы.