Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.163 Beiträge
 
Delphi 12 Athens
 
#9

AW: Zeichenkette durch Umlaut ersetzen

  Alt 3. Aug 2018, 20:29
Ist das echt legitim, einen String mit sich selbst ändern zu wollen?
Warum nicht?

Delphi-Strings sind referenzgezählt
und bei Änderung greift ein automatisches CopyOnWrite.

Also die "Kopie" in dem Parameter behält die Referenz und für das Result wird ein neuer String erstellt und da dann reingegeben.

PS: Auch s := s + '1' + s + '2'; ist eigentlich ein Funktionsaufruf, für den sich in der System-Unit ein paar Funktionen verstecken. (mit bissl CompilerMagic für Funktionen mit einer unbestimmten Anzahl an Parametern, welche man leider nicht für eigene Funktionen verwenden darf )
s := Concat(s, '1', s, '2');
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 3. Aug 2018 um 20:32 Uhr)
  Mit Zitat antworten Zitat