Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2006.09.03;
Скачать: [xml.tar.bz2];

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
2-1155225004
Fu
2006-08-10 19:50
2006.09.03
Функция


2-1155552792
Id
2006-08-14 14:53
2006.09.03
Вставка нескольких значений в таблицу


3-1151048150
zdm
2006-06-23 11:35
2006.09.03
FASTReport нумерация полей


2-1155491581
FANAT_WP
2006-08-13 21:53
2006.09.03
Как узнать что мышка перестала двигаться?


3-1151156533
x.pro
2006-06-24 17:42
2006.09.03
Нужно узнать все значения одного поля без перебора...





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский