Zitat von
thkerkmann:
Damit ist der Code von inherited
IMHO unschlagbar der schnellste und eleganteste.
Gruss
Würde ich nicht so sagen:
TestCode:
Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var
sl : TStringList;
sl2 : TstringList;
tick1 : Longword;
i,j : longint;
s: String;
begin
sl := TstringList.create;
sl2 := TStringList.create;
StatusBar1.Panels[0].Text:='';
sl.LoadFromFile(ExtractFilePath(ParamStr(0))+'testFile.txt');
tick1 := GetTickCount;
for i:=sl.Count -1 downto 0 do
sl2.add(sl[i]);
label4.Caption := IntToStr(GetTickCount - tick1);
StatusBar1.Panels[0].Text:='downto fertig';
sl.Free;
sl2.Free;
sl := TstringList.create;
sl.LoadFromFile(ExtractFilePath(ParamStr(0))+'testFile.txt');
tick1 := GetTickCount;
for i:=sl.count -1 downto (sl.count -1) div 2 do
begin
sl.Exchange(i,sl.count -1 -i);
end;
label5.Caption:= IntToStr(GetTickCount - tick1);
StatusBar1.Panels[0].Text:='exchange fertig';
sl.free;
sl := TstringList.create;
sl.LoadFromFile(ExtractFilePath(ParamStr(0))+'testFile.txt');
tick1 := GetTickCount;
for i:=0 to (sl.count -1) div 2 do
begin
s:=sl[i];
sl[i]:=sl[sl.Count-i-1];
sl[sl.Count-i-1]:=s;
end;
label7.Caption:= IntToStr(GetTickCount - tick1);
StatusBar1.Panels[0].Text:='exchange fertig';
sl.free;
StatusBar1.Panels[0].Text:='fertig';
end;
Ergebnis im Anhang.
Grüße
Klaus