Ich muss euch beide enttäuschen:
1. Es gibt keinen Unterschied
2. Er baut in keinem der beiden Fällen die Strings zusammen.
Delphi-Quellcode:
function TMemoStrings.GetTextStr: string;
begin
Result := Memo.Text;
end;
Bei einem Memo wird der Text direkt vom Control gehalten und die Lines[] Eigenschaft holt die Zeilen mit den Windowsbotschaften direkt vom Control.
Delphi-Quellcode:
function TMemoStrings.Get(Index: Integer): string;
var
Text: array[0..4095] of Char;
begin
Word((@Text)^) := SizeOf(Text);
SetString(Result, Text, SendMessage(Memo.Handle, EM_GETLINE, Index,
Longint(@Text)));
end;
Der angegebene Quelltext ist (c) Copyright by Borland/CodeGear.
Bei einer ListBox würdet ihr teilweise Recht haben. Teilweise nur, weil die ListBox ihre Text Eigenschaft nicht veröffentlicht.