Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
ВнизФункции в Delphi Найти похожие ветки
← →
Id (2006-08-02 16:24) [0]Еще раз здраствуйте.
Вопрос по function.
Ee можно использовать для получения какого-то результата с входными параметрами. Выходной параметр один - Result.
А если мне надо несколько выходных параметров?
Подскажите синтаксис.(Если это возможно)
← →
Alkid © (2006-08-02 16:30) [1]Это можно сделать несколькими методами.
Самый простой: определять параметры по ссылке:
function sumAndCheck(a,b : integer;var c : integer) : boolean;
begin
c := a + b;
Result := c < 10;
end;
Данная функция суммирует 2 числа и возвращает true, если сумма меньше 10.
При этомо на так же возвращает И результат - через параметр c.
Синтаксис для вызова:
var r : integer;
b : boolean;
begin
b := sumAndCheck(10,15,r);
end;
Теперь в b - результат сравнения, а в r - сумма
← →
Zeqfreed © (2006-08-02 16:35) [2]
function SomeRoutine(out OutParam; var VarParam) : ReturnParam;
begin
OutParam := VarParam;
Result := Whatever;
end;
See Also: Delphi Help: Parameter semantics
← →
Сергей М. © (2006-08-02 16:37) [3]
> А если мне надо несколько выходных параметров?
К функции как таковой это отношения не имеет.
← →
Desdechado © (2006-08-02 16:40) [4]У тебя Result может быть и массивом типизированным или даже разнотипным, если он Variant.
Не запутайся только.
Возврат функцией нескольких значений, особенно разнотипных, говорит о плохом проектировании.
← →
Id (2006-08-02 16:52) [5]Огромное спа!
← →
Ega23 © (2006-08-02 17:06) [6]Как Result ты можешь и класс и рекорд получить. А в нём уже всё, что тебе надо.
type
TОфигеннаяСтруктура=record
ОфигенныйПараметр1 : Boolean;
ОфигенныйПараметр2 : Integer;
ОфигенныйПараметр3 : String;
............
end;
function Ля_ля:TОфигеннаяСтруктура;
Страницы: 1 вся ветка
Форум: "Начинающим";
Текущий архив: 2006.08.20;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.044 c