Thema: Delphi Insert/Delete mit PChar

Einzelnen Beitrag anzeigen

Benutzerbild von Shaman
Shaman

Registriert seit: 2. Nov 2003
Ort: Schweiz
407 Beiträge
 
Turbo Delphi für Win32
 
#1

Insert/Delete mit PChar

  Alt 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
  Mit Zitat antworten Zitat