Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   GUI-Design mit VCL / FireMonkey / Common Controls (https://www.delphipraxis.net/18-gui-design-mit-vcl-firemonkey-common-controls/)
-   -   TMemo-Ersatz mit mehr Kapazität? (https://www.delphipraxis.net/178682-tmemo-ersatz-mit-mehr-kapazitaet.html)

himitsu 23. Jan 2014 11:30

AW: TMemo-Ersatz mit mehr Kapazität?
 
Zitat:

Delphi-Quellcode:
TStringlist.Text:=TMemo.Lines.Text;

Memo.Lines.Text (wobei Lines ein TMemoStrings ist) oder TStrings.Text / TStringList.Text .......

Bei einer TStringList sind alle Lines einzelne Strings.
TStringList.Text erstellt einen großen String, aus den vielen ein Einzelstrings und das wird erst zugewiesen.
Bei TStringList.Assign und TStringList.AddStrings werden die Strings aber einzeln übergeben, ohne wie erst zusammenzusetzen und dann wieder auseinanderzunehmen, weswegen
Delphi-Quellcode:
TStringList.Text := TStringList.Text
praktisch der absolute Overkill ist.

Es kommt aber immer darauf an, wie der Speicher hinter TStrings verwaltet wird und wie gut die Methoden des TStrings darauf abgestimmt sind.
So macht z.B. ein Memo.Lines.Text das Selbe wie Memo.Text und liest nicht erst "langsam" die einzelnen Lines aus, welche danach wieder zusammengesetzt werden müssten.



PS: Da du dich an den Grenzen des Speichermanagements bewegst ...
Es brauchten nur ein paar Bytes einen der großen den freien Speicherblöcke teilen, welche du grade noch so verwendet hast und schon war es das. *peng*


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:46 Uhr.
Seite 2 von 2     12   

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz