Delphi функция возвращающая массив
Автор *** задал вопрос в разделе Другие языки и технологии
delphi - как написать функцию, которая возвращает массив? и получил лучший ответ
Ответ от Александр Ильин[гуру]
Опиши свой ТИП динамического массива. Тогда проще:
type
RealArray = array of Real;
function Test(a: Real): RealArray;
var
i: Integer;
begin
SetLength(Result, 2);
for i := 0 to 1 do Result [ i ] := a;
end;
Однако не улети за границы дин. массива. Макс. длину лучше задать именованной константой - проще править потом
И для опр. текущей верхней границы используй High()
Ответ от Александр[гуру]
Диапазон индексов указывайте ему!. . Pascal-based среды так просто не понимают "резиновых" массивов...
Диапазон индексов указывайте ему!. . Pascal-based среды так просто не понимают "резиновых" массивов...
Ответ от Александр Осипов[гуру]
ФУНКЦИЯ не может вернуть массив.
Нужно использовать процедуру, примерно так:
type mas=array[1..10] of byte;
...
var b:mas;
...
procedure P(VAR a:mas);
begin
for i:=1 to 10 do a:=i*i;
end;
...
P(b);
ФУНКЦИЯ не может вернуть массив.
Нужно использовать процедуру, примерно так:
type mas=array[1..10] of byte;
...
var b:mas;
...
procedure P(VAR a:mas);
begin
for i:=1 to 10 do a:=i*i;
end;
...
P(b);
Ответ от Вовка Гончаров[гуру]
нафига массив передавать через память!?? !
Передайте просто указатель на него
functtion bla bla bla : Pointer;
нафига массив передавать через память!?? !
Передайте просто указатель на него
functtion bla bla bla : Pointer;
Ответ от 22 ответа[гуру]
Привет! Вот подборка тем с похожими вопросами и ответами на Ваш вопрос: delphi - как написать функцию, которая возвращает массив?