unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls;
type
StaticArray = Array[0..1000] of Double;
TForm1 = class(TForm)
Button1: TButton;
procedure Button1Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
DArray: Array of StaticArray;
Length : Integer;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Length:=5;
Setlength(DArray, Length);
end;
end.
當我嘗試使用Setlength()來定義2DArray的長度時,它不會給我提供任何錯誤或任何內容。Delphi使用由靜態數組定義的2d數組
我期望結果是一個具有1000列和長度行數的數組。 然而,結果只有1001列的1行。
任何想法爲什麼?
我需要數組來定義這種方式,但我堅持如何設置它的長度。
*編輯列數,0..1000加起來最多1001列。
* Edit2修復了一些代碼。
* EDIT3取得了較好的例子
StaticArray具有1001個元素,而不是1000,FWIW。是的,2DArray是2D,1001 *長度。你沒有顯示足夠的代碼來診斷你的問題。我們需要一個[mcve]。 –
在德爾福柏林工作正常,除了David提到的額外元素。執行長度爲(MyArray)和長度(MyArray [10])的WriteLn的10行控制檯應用程序顯示它們都存在並具有適當的值。 –
爲什麼不先發布真實代碼?以上不編譯。 'Length'沒有在任何地方聲明或分配,並且'StaticArray'的聲明也是錯誤的。 –