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

Вниз

как передать и принять массив в функцию(процедуру)? +   Найти похожие ветки 

 
vilfred   (2002-10-18 17:25) [0]

Как передать массив в функцию, которую собираюсь потом еще раз вызывать рекусивно(передавая ей же немного видоизмененный массив).

т.e.
...
private
{ Private declarations }
//объявляю функцию
function RecursiveFFT(var ending: array[0 .. VidW] of real);

....

//тут какой-то код, вызываю функцию

function TForm1.RecursiveFFT(ending: array[0 .. VidW] of real);
begin
...
//тут какие-то кракозяблы
...
RecursiveFFT(ending);
end;

как вот написал оно орет очень сильно на компилирование...

А на самом деле хочу передавать массив ending в функцию RecursiveFFT, что-то там с ней сделать, посчитать какие-то коэффициенты и в зависимости от их содержания передать вновь ending в функцию(или процедуру)... как это сделать можно?


И еще вопрос. Как из массива выудить все четные элементы в один массив, а нечетные в другой массив?

Спасибо за ответ!

p.s. так глючно рекурсивно передавать массив в программу надо потому, что пишу быстрое преобразование фурье, а там просто алгоритм должен быть рекурсивным... Еслиб на перле яб уже написал, а так в дельфях мало шарю.


 
pirat   (2002-10-18 17:37) [1]

function TForm1.RecursiveFFT(var ending: array of real)

а в крмпиляторе включи поддержку открытых массивов.
внутри функции массив с 0 будет нумероваться.


 
han_malign   (2002-10-18 17:49) [2]

Либо опиши массивовый тип, он в типе аргумента проходит
procedure Proc(var aArray: TByteArray);
З.Ы. Кстати при out и как ни странно(но вполне логично)const тоже в стек запихивается указатель а не структура.


 
vilfred   (2002-10-18 18:13) [3]

Угу, спасибо больше за ответы попобую и то и другое, а пока оно уже перестало ругаться но сообщает в ворнинге, что массив может не возвращаться.. буду думать.



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

Форум: "Основная";
Текущий архив: 2002.10.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-92500
brestmarket
2002-10-18 14:27
2002.10.28
Как получить путь к приложению по его расширению?


1-92489
Mav
2002-10-18 12:35
2002.10.28
Работа с булевыми выражениями


4-92813
Alexander
2002-09-17 14:36
2002.10.28
Как можно открыть свойства заданного принтера?


1-92598
I_S_
2002-10-17 10:47
2002.10.28
---|Ветка была без названия|---


4-92797
Trof
2002-09-13 13:16
2002.10.28
Изображение рабочего стола





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский