Forum: Object-Pascal / Delphi-Language
Delphi
by Der_Unwissende,
7. Feb 2006
Nun ja,
schau mal in die Hilfe von Delphi
Oder lösch das Objekt nach dem Extrahieren
procedure TTestObjectList.RemoveItemByID(_ID: integer);
var
Objekt: TTest;
i: integer;
Forum: Object-Pascal / Delphi-Language
Delphi
by Der_Unwissende,
3. Feb 2006
So toll auch Arrays sind, für eine Struktur Variabler Länge sind sie völlig ungeeignet. Natürlich kann man sich jetzt totdiskutieren, das Listen und Bäume häufig auch nur auf Arrays aufsetzen, aber die sind ja auch schon gekapselt. Am einfachsten ist es für die wirklich auf eine Liste zurueckzugreifen. Und siehe da, die TObjectList unterstützt sogar den wahlfreien Zugriff über .items auf das x-te...
Forum: Object-Pascal / Delphi-Language
Delphi
by Der_Unwissende,
3. Feb 2006
Ok, statische Klassenvariablen gibt es ja eigentlich nicht in Delphi. Natürlich ist deine Variable, die du hier hochzählst wiederum global und das lässt sich (wie hier schon gesagt wurde) einfach vermeiden.
Was ich meinte noch mal als Delphi Code
type
TFoo = class(TObject)
private
FId : Cardinal;
...
public
Forum: Object-Pascal / Delphi-Language
Delphi
by Der_Unwissende,
2. Feb 2006
Hi,
wenn du wirklich gänzlich auf globale Variablen verzichten möchtest, kannst du eine Kapselung bauen, die dir Instanzen liefert. Ich weiß nicht in wie weit du mit dem Factory-Pattern vertraut bist, aber etwas in der Art kann dir hier schon sehr gut weiterhelfen.
Erstelle einfach eine Klasse, die alle Objekte von deinem Typen verwaltet. (hier könntest du dann auch automatische IDs...