Moin,
ich bin es noch gewohnt, mit doppelt verketteten Listen zu arbeiten, die so aussehen:
Delphi-Quellcode:
type
PData = ^TData;
TData = class
next : PData;
prev : PData;
datum: integer;
end;
Soweit ich das verstanden habe, soll man so nicht mehr arbeiten. Als Alternative las ich irgendwo, dass man das jetzt auch so implementieren dürfe:
Delphi-Quellcode:
type
TData = class
next : TData;
prev : TData;
datum: integer;
end;
Ist das so korrekt? Und dann funktioniert auch
Delphi-Quellcode:
var a,b : TData;
begin
a := TData.create;
b := TData.create;
a.next := b;
b.prev := a;
end;
?
D. h. a, b, a.next und b.prev werden intern auch nur als Zeiger gespeichert, wobei a und b.prev sowie b und a.next auf jeweils identische Speicherbereiche zeigen?
Hintergrund: Ich entwickle zurzeit ein neues Projekt, welches zwar zunächst
Win32 kompiliert werden soll, später soll aber ohne große Änderungen auch eine Konvertierung nach .NET möglich sein.
TIA!