Forum: Object-Pascal / Delphi-Language
Delphi
by alzaimar,
19. Mär 2008
Bei mir ist selbst bei FastMM4 die Konkatenation schneller.
Ich schließe daraus, das wir uns nicht mehr so sehr um Performance scheren müssen, sondern eher die Verfahren optimieren können. Delphi und moderne MMS kompilieren das schon recht ordendlich. Ich persönlich finde das beruhigend, weil ich -ehrlich gesagt- nicht ständig mit irgendwelchen Tricks rumhantieren muss, sondern mich auf...
Forum: Object-Pascal / Delphi-Language
Delphi
by alzaimar,
19. Mär 2008
@jbg: Wir argumentieren doch immer so, das bei einer Stringkonkatenation (hier) 1 Mio mal neuer Speicher angefordert und der String umkopiert werden muss, und das dauert und daher sollte man V2 nehmen. Wir alle predigen das, und das basiert ja i.A. auf eigenen Erfahrungen.
Wenn man das dann mal manifestieren will (sozusagen als Demo fur Dummies), fällt man so richtig (aber so richtig!) auf...
Forum: Object-Pascal / Delphi-Language
Delphi
by alzaimar,
19. Mär 2008
Noch lustiger: Ich ersetze also TStringList mit einem dynamischen Stringarray... Lasst Euch überraschen :shock:
Nebenbei: Die Ursache in TStringList zu suchen, halte ich für falsch, denn das wird ja in beiden Routinen aufgerufen. Ich kann die Berechnung der Gesamtlänge auch weglassen, schneller als die Konkatenation wirds damit auch nicht. Und dann wird in beiden Routinen GetTextStr gleich...
Forum: Object-Pascal / Delphi-Language
Delphi
by alzaimar,
19. Mär 2008
Die ganzen Jahre predige ich, das man ständige Stringkonkatenationen vermeiden soll, und normalerweise stimmt das auch.
Aber hier nicht:
Function V1(s: TStringList): Integer;
Var
i: Integer;
x: String;
Begin
x := '';