我有這樣的代碼在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