Почему нет возврата значений через Var параметр ?
Вопрос по поводу возврата значений из процедуры через через var параметр
есть процедура T1 из которой через параметр s возвращается некая информация, но отладка показывает что возврата нет.
Что не так ?
Причем видно что при вызове T1 из T параметр возвращается.
Результат вызова процедуры T
есть процедура T1 из которой через параметр s возвращается некая информация, но отладка показывает что возврата нет.
Что не так ?
Причем видно что при вызове T1 из T параметр возвращается.
procedure T1(const str: String; var s: String);
var
a: String;
begin
if Length(str) < 10 then
begin
s:=str+IntToStr(Length(str));
WriteLog(s);
T1(s, a);
WriteLog('T1 a='+a);
end
else
s:='1111111111111111111111';
end;
procedure T();
var
a: String;
begin
T1('1', a);
WriteLog('T a='+a);
end;
Результат вызова процедуры T
2013.01.23 15:14:58.639 11
2013.01.23 15:14:58.639 112
2013.01.23 15:14:58.639 1123
2013.01.23 15:14:58.640 11234
2013.01.23 15:14:58.640 112345
2013.01.23 15:14:58.640 1123456
2013.01.23 15:14:58.641 11234567
2013.01.23 15:14:58.641 112345678
2013.01.23 15:14:58.641 1123456789
2013.01.23 15:14:58.641 T1 a=
2013.01.23 15:14:58.642 T1 a=
2013.01.23 15:14:58.642 T1 a=
2013.01.23 15:14:58.642 T1 a=
2013.01.23 15:14:58.642 T1 a=
2013.01.23 15:14:58.643 T1 a=
2013.01.23 15:14:58.643 T1 a=
2013.01.23 15:14:58.643 T1 a=
2013.01.23 15:14:58.643 T1 a=
2013.01.23 15:14:58.644 T a=11
Комментарии
необходимо fsScript1.CallFunction1