![]() |
Re: Array verkleinern
Hi,
Dein Argument gegen die TObjectList ist nicht besonders gut ;) Du kannst casten und man kann sich ne Klasse von TObjectList ableiten die auf deine Klasse "spezialisiert" ist ;) Gruß Neutral General |
Re: Array verkleinern
Habs jetzt hinbekommen. :-)
Heute anscheinend bei meinen letzten versuch nur vergessen ein bla := Tobjectlist.create; im create meiner klasse aufzurufen :wall: Und jetzt frisst er auf einmal auch meine Klasse bei objlst.add(); Danke an alle |
Re: Array verkleinern
Zitat:
Delphi-Quellcode:
Aber eine Klasse zu vewenden wäre bestimmt günstiger:
var
DynArray: array of Integer; procedure TForm1.Button1Click(Sender: TObject); begin SetLength(DynArray, Length(DynArray) + 1); DynArray[High(DynArray)] := round(random * 100); end; procedure TForm1.Button2Click(Sender: TObject); begin ShowMessage(IntToStr(DynArray[High(DynArray)])); end; ![]() |
Re: Array verkleinern
Also deine Funktion wäre so wohl funktionsfähig:
Delphi-Quellcode:
oder
procedure Delete(index: Integer);
begin meinarray[i].Free; for i := index to High(meinarray) - 1 do meinarray[i] := meinarray[i + 1]; SetLength(meinarray, High(meinarray)); end;
Delphi-Quellcode:
procedure Delete(index: Integer);
begin meinarray[i].Free; for i := index + 1 to High(meinarray) do meinarray[i - 1] := meinarray[i]; SetLength(meinarray, High(meinarray)); end; Zitat:
Zitat:
allerdings muß auch das zu löschende Element weg und zwar komplett. :warn: Zitat:
Wenn du das machst, dann würde ja der letzte Eintrag im Array freigegeben (auch der kopierte ... sind ja schließlich das selbe Objekt :zwinker: ) PS: da du nur den Objektzeiger auf das i-te Element überschrieben hast, bleibt dennoch die Objektinstanz erhalten = Speicherleck. :stupid:
Delphi-Quellcode:
was genau funktionierte denn nicht? (kann es mir zwar denken, aber die Fehlerbeschreibung von dir ist nicht aussagekräftig.)
Doch funktioniert das nicht.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:37 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz