Registriert seit: 2. Nov 2003
Ort: Schweiz
407 Beiträge
Turbo Delphi für Win32
|
Insert/Delete mit PChar
30. Jul 2004, 10:26
Hallo zusammen
Ich habe folgende zwei Funktionen:
Delphi-Quellcode:
function InsertBuffer(var Dest: PChar; const DestSize: Integer;
const Buffer: PChar; const BufferSize: Integer; const Index: Integer): Integer;
var
S: string;
begin
SetString(S, Dest, DestSize);
FreeMem(Dest, DestSize);
Insert(Buffer, S, Index+1);
Result:= Length(S);
GetMem(Dest, Result);
Move(S[1], Dest^, Result);
end;
function DeleteBuffer(var Dest: PChar; const DestSize: Integer; const Index, Count: Integer): Integer;
var
S: string;
begin
SetString(S, Dest, DestSize);
FreeMem(Dest, DestSize);
Delete(S, Index+1, Count);
Result:= Length(S);
GetMem(Dest, Result);
Move(S[1], Dest^, Result);
end;
Wie lassen sich diese optimieren? Vorallem die Umwege über Insert und Delete gefallen mir nicht...
Gruss
Shaman
Daniel Pauli Looking for answers from the great beyond
|
|
Zitat
|