一段很有趣的代码

两段代码, edit2.Text结果截然不同!

procedure TForm3.Button1Click(Sender: TObject);
 var tmpstr:string;
begin
   tmpstr := funtest(4); //Text = 4
   edit1.Text := tmpstr;
   tmpstr := funtest(2);
   edit2.Text := tmpstr; //Text = 4  //多数猜想不到是这样.
end;

procedure TForm3.Button2Click(Sender: TObject);
begin
   edit1.Text := funtest(4);//Text = 4
   edit2.Text := funtest(2);//Text = 空值   //几乎都答对了
end;

function TForm3.funtest(i:integer):string;
 begin
   if I>3 then
     result := i.ToString; //问题函数.
 end;

你可能感兴趣的:(RAD,Studio,XE,integer,function)