Thema: Delphi TStrings

Einzelnen Beitrag anzeigen

Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.116 Beiträge
 
Delphi 11 Alexandria
 
#9

Re: TStrings

  Alt 11. Okt 2003, 19:38
Moin Jens,

stimmt.
Dann müsste mein Beispiel so aussehen.

Delphi-Quellcode:
var
  TempTabs : TStringList; // TStrings ist eine abstrakte Klasse, von der man keine Instanzen bilden sollte.

begin
  TempTabs := TStringList.Create; // Temporäre Liste erzeugen
  try
    TempTabs.Assign(MeineCompo.Tabs); // und den Inhalt (ggf. samt Objekten) aus der anderen Liste übernehmen
    TempTabs.Add('Test'); // neue Zeile hinzufügen
    MeineCompo.Tabs := TempTabs; // Temporäre Liste als neu zuweisen => müsste jetzt SetTabs aufrufen
  finally
    FreeAndNil(TempTabs);
  end;
end;
Jetzt ist allerdings der Nachteil, dass man bei einer Zuweisung mit := nicht damit rechnet, dass intern Assign benutzt wird.
Dafür gibt es ja extra := und Assign
Wenn ich:
MeineCompo.Tabs := TempTabs; schreibe, erwarte ich, dass MeineCompo.Tabs auf das gleiche Objekt zeigt, wie TempTabs, und keine Kopie erhält.
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat