14. maj 2004 - 19:56Der er
1 kommentar og 1 løsning
Oprydning efter var arrays
var list: array of record col: array of string; obj: array of integer; end;
Jeg bruger det i forbindelse med at gemme et advStr-grid(tms) midlertidigt. Og jeg har brug for det helt dynamiske som ligger i det.
Men når jeg er færdig er det så nok at lave en setLength(list,0) eller skal alle i list løbes igennem og så: setLength(list[i].obj/col,0) for at der ryddes helt op?
Lavede dette lille testprogram og det ser ud til at setlength(list,0) er tilstrækkeligt. Du kan evt. prøve videre for dig selv. Formen består af 4 knapper samt 1 listview i report mode og 7 kolonner.
var list: array of record col: array of string; obj: array of integer; end;
frmMain: TfrmMain;
implementation
{$R *.dfm}
procedure TfrmMain.btnTestClick(Sender: TObject); var MemRec : _MEMORYSTATUS; begin GlobalMemoryStatus(MemRec); with lvLog.Items.Add do begin SubItems.Add(IntToStr(MemRec.dwTotalPhys)); SubItems.Add(IntToStr(MemRec.dwAvailPhys)); SubItems.Add(IntToStr(MemRec.dwTotalVirtual)); SubItems.Add(IntToStr(MemRec.dwAvailVirtual)); SubItems.Add(IntToStr(MemRec.dwTotalPageFile)); SubItems.Add(IntToStr(MemRec.dwAvailPageFile)); Caption := IntToStr(MemRec.dwMemoryLoad); end; end;
procedure TfrmMain.btnAllocateClick(Sender: TObject); var i : integer; begin Screen.Cursor := crHourglass; try SetLength(list,10000); for i := low(list) to high(list) do begin SetLength(List[i].col,1000); SetLength(List[i].obj,1000); end; finally Screen.Cursor := crDefault; end; end;
procedure TfrmMain.btnFree1Click(Sender: TObject); begin SetLength(list,0); end;
procedure TfrmMain.btnFree3Click(Sender: TObject); var i : integer; begin Screen.Cursor := crHourglass; try // Prøvede begge veje. Nedefra og op gjorde ingen forskel for i := high(list) downto low(list) do begin SetLength(List[i].col,0); SetLength(List[i].obj,0); end; SetLength(list,0); finally Screen.Cursor := crDefault; end; end;
Det var virkelig noget jeg kunne bruge til noget, tak. --nop
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.