Re[7]: установить свойство
От: Jack128  
Дата: 21.08.06 20:57
Оценка: 14 (1)
Здравствуйте, Master Yoda, Вы писали:

MY>Здравствуйте, Jack128, Вы писали:


MY>>>Выводит пустую строку, а что?

J>>А у меня выдало Test

MY>Хм, а какая версия Delphi? У меня пятая


в седьмой и 2006 — так как я описал. Собственно так было всегда, имхо у тя где то глючит

J>>Инициализация проводится только для локальных/глобальных переменных, но не для Result


MY>Мне казалось что к Result применимы те же правила, что и для локальных переменных. Т.е. это по сути неявная локальная переменная.


Нет, это не так. Result — это не явный var параметр. собственно посмотри на асм код двух таких подпрограмм:


procedure Proc(var Result: string; I, J: Integer);
begin
  Result := IntToStr(I) + IntToStr(J)
end;

function Func(I, J: Integer): string;
begin
  Result := IntToStr(I) + IntToStr(J)
end;

procedure TForm8.FormCreate(Sender: TObject);
var
  S: string;
begin
  Proc(S, 1, 2);
  S := Func(1, 2);
  Caption := s;
end;

он абсолютно одинаков.


J>>ЗЫ Ты точно закоментировал строку Result := '' ??


MY>Да.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.