我有这样的代码在Delphi XE值分配给变量参数
function DoSomething(MyVar : Variant) : boolean;
begin
MyVar := 'Bar';
Result := true;
end;
procedure TForm1.Button1Click(Sender: TObject);
var
foo : string;
begin
foo := '';
showmessage(foo); // shows blank ofc
DoSomething(foo);
showmessage(foo); // still blank
end;
我所试图做的,做起来很富的paramater可以设置。我尝试使用var关键字如
DoSomething(var MyVar : Variant)....
但是不会编译。
这样做的原因,是DoSomething的可分配字符串或整数MyVar的这就是为什么它的一个变种...
使用'var'参数(按引用传递),你的'富时:字符串;'应该成为'FOO:变体;就像编译器告诉你的一样。 – 2011-05-02 06:33:29