Delphi 函數和過程的參數問題

Delphi 函數和過程的參數問題

複製代碼
{默認參數是傳值, 不會被改變}
function MyF1(x: Integer): Integer;
begin
Inc(x);
Result := x;
end;

{var參數是傳地址,參數會被改變,而且參數只能是變量}
function MyF2(var x: Integer): Integer;
begin
Inc(x);
Result := x;
end;

{out參數是爲支持Com的, 和 var 的結果是一樣的, 一般我們用不着它}
function MyF3(out x: Integer): Integer;
begin
Inc(x);
Result := x;
end;

{const參數是絕對不可以賦值的, 這是被編譯器優化的方式, 儘量多用}
function MyF4(const x: Integer): Integer;
begin
//Inc(x); {這句會出錯, 因爲帶 const 前綴的參數是不可以更改的}
Result := x;
end;

{靜態數組做參數,應該先把數組定義爲一個類型}
Type
IntArray = array[0..9] of Integer; {先把需要的數組定義成一個類型}

function MyFun(arr: IntArray): Integer;
var
i: Integer;
begin
Result := 0;
for i in arr do Result := Result + i;
end;

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章