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

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.018 c
6-92643
ShuraKh
2002-08-22 13:40
2002.10.28
Отправка мыла , кодировки


4-92781
Melamed
2002-09-13 15:05
2002.10.28
Имя програмного модуля, который создал данное окно


1-92586
maxim2
2002-10-17 06:08
2002.10.28
Сообщение в StatusBar


1-92589
Демонов Е.В.
2002-10-16 05:28
2002.10.28
Вопрос про Delpi 7 и XP


1-92588
nomshar
2002-10-17 00:36
2002.10.28
TPageControl