Hi,
also, ich habe schon im Forum gesucht und auch gute Lösungen zum Vertauschen von Variablen gefunden.
Doch es wäre ideal wenn man nur die Pointer auf die Speicherbereiche verschiebt. So könnte man unabhängig von der Größe der eigentlichen Variable, die Pointer vertauschen. Notfalls mit einem Hilfspointer.
Und das ab besten in einer Funktion kapseln.
Kurzum ich will ungefähr so was, doch leider funktioniert das nicht:
Delphi-Quellcode:
procedure swap(var p1,p2:Pointer);
var pdummy:Pointer;
begin
pdummy:=p1;
p1:=p2;
p2:=pdummy;
end;
aufrufen:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i1,i2:integer;
begin
i1:=1;
i2:=2;
swap(@i1,@i2);
showmessage('i1= '+inttostr(i1)+#13+'i2= '+inttostr(i2));
end;
Wie kann man so was realisieren?
Gruß Alexander