我想在Delphi 5.0中做一個ArrayList。於是,我找到了解決這樣的代碼:數組從Delphi 5.0 Pascal中的0或1開始?
var arr: array of String;
OK,但每次我補充一點時間我這樣做:
var
Form1: TForm1;
var arr : array of String;
procedure TForm1.Button1Click(Sender: TObject);
var aux :string;
var len:integer;
begin
len := Length(arr) + 1;
SetLength(arr, len);
arr[len-1] := 'abc' + IntToStr(len);
Button1.Caption := arr[len-1]; // just to writeout something
end;
我是一個C++程序員,我不知道帕斯卡爾什麼。我總是聽說Pascal索引從1開始,而不是0.正如在上面的過程中,由於0索引開始,我做了arr [len-1]。
有沒有比Pascal數組更好的方法?與C++的std::vector
一樣?
我很久沒有使用Pascal,但如果內存效果不錯,字符串索引從1開始的原因是因爲第一個元素是字符串長度,並且您可以直接編輯以更改長度 – 2014-05-27 04:43:44
現在,此答案爲過時。在NextGen Delphi編譯器中,字符串索引是基於0的。 – jachguate 2014-09-19 16:43:41
+ jachguate當問題是關於「Delphi 5.0 Pascal」的時候,爲什麼這個答案已經過時了? :-) – Trinidad 2014-09-19 17:19:35