Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#4

Re: Was stimmt hier nicht ? Probleme mit Pointer und dyn. Ar

  Alt 6. Mär 2005, 13:25
Ja, schon besser, aber in einer Zeile sollte eigentlich nur eine Anweisung stehen.
Delphi-Quellcode:
function DeletePicture(PicInfo:Pointer): Boolean;
var I,Index: Integer;
    ptr2: ^TPictureInfo; // Addresse auf Eintrag im Dyn. Array Picture
begin
  Result:=False;
  Index:=-1;
  for I:=0 to Count-1 do // Array durchlaufen
  begin
     ptr2:=@Picture[I]; // Addresse des Eintrags holen
     // wenn übergebende Addresse = Addresse des Eintrags speichere Index
     if PicInfo = ptr2 then
       Index:=I;
  end;
  ptr2:=nil; //Pointer nicht mehr benötigt
  if Index <> -1 then
  begin
     //"Lücke" im Array mit nachfolgenden Füllen
     for I:=Index to high(Picture)-1 do
       Picture[I]:=Picture[I+1];
     SetLength(Picture,Count-1); //Array um eins kürzen
     Result:=True;
  end;
end;
(Wie man die reservierten Wörter schreibt, ist mir eigentlich egal)

Mich würde aber eher interessieren, ob meine Vermutung stimmt .
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat