Routine name(... Out OutputVarName : type; ...)
Директива Out идентифицирует параметр функции или процедуры, являющийся переменной ссылкой только для выведения.
Это позволяет подпрограмме возвращать данные переменной вызывающей программы в дополнение к значению Result, доступного в функциях. Это эквивалентно Var за исключением того, что значение не может быть изменено подпрограммой.
Delphi не предписывает это, и при этом это, кажется, не предписывает потребность присвоения значение.
|
var
number1, number2, number3 : Integer;
begin
// Присвоение значений нашим числам
number1 := 3;
number2 := 4;
number3 := 5;
// Вызов простой подпрограммы, чтобы увидеть как они обработываются
ThreeParms(number1, number2, number3);
// Показ их значений
ShowMessageFmt('number1 = %d number2 = %d number3 = %d ',
[number1, number2, number3]);
end;
// Простая подпрограмма, иллюстрирующая 3 типа обработки параметра
// value1: только входное значение
// value2: только выходное значение
// value2: входное и выходное значение
procedure TForm1.ThreeParms( value1: Integer;
Out value2: Integer;
var value3: Integer);
begin
// Добавление value1 к value3 как выходное значение value2
value2 := value1 + value3;
// Умножение value1 на value3, чтобы передать вывод value3
value3 := value1 * value3;
end;
|