Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Динамические массивы [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) не компилируется - несовместимость типов


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


Наверх

Титульная страница Поиск, карта сайта Написать письмо