程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> Delphi >> Delphi中數組賦值

Delphi中數組賦值

編輯:Delphi

曾經想過, Delphi 要能這樣給數組賦值就好了: arr := [...]; VarArrayOf 可不是新東西, 不過之前還沒習慣用它.

var
  bs: TBytes;
//  bs: TArray<Byte>begin//  SetLength(bs, 3);
  bs := VarArrayOf([11, 22, 33]);
  ShowMessage(IntToStr(bs[2])); //33end;
 
var
  strArr: TArray<string>
begin//  SetLength(strArr, 3);
  strArr := VarArrayOf(['AAA','BBB','CCC'
  ]);
  ShowMessage(strArr[2]); //CCCend;

這只用於動態數組, 甚至支持泛型寫法, 但不支持靜態數組; 但當做函數參數時, 只支持傳統動態數組的寫法.

function GetSum(aArr: arrayof Integer): Integer;
var
  i: Integer;
begin
  Result := 0;
  for i in aArr do Inc(Result, i);
end;
 
procedure TForm1.FormCreate(Sender: TObject);
var
  n: Integer;
begin
  n := GetSum([1, 2, 3]);
  ShowMessage(IntToStr(n));  //6
 
  n := GetSum([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
  ShowMessage(IntToStr(n)); //55end;

還有一個 GDI+ 中非常好的功能之前被忽視了, 現在才知道它的好: 這就是 GDI+ 中 Bitmap 的 Pixels[] 屬性, 和 Canvas.Pixels[] 不同, 它快多了!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved