Einzelnen Beitrag anzeigen

Bomberbb

Registriert seit: 23. Sep 2003
227 Beiträge
 
#1

Referenz auf den Erzeuger... [erledigt]

  Alt 22. Nov 2007, 17:34
Hallo,

ich übe mich an der oop unter Delphi. Nun habe ich ein Problem. Ich will in Objekte den Erzeuger speichern. Momentan mache ich das so, wie in dem Mustercode hier:
Delphi-Quellcode:
tVater = Class
  Protected
    Soehne : tObjectList;
  Private
  Public
    Name:String;
    constructor Create(einName:String);
    function Geburt: tSohn;
  End;
  
tSohn = Class
  Protected
    Vater:tVater:
  Private
  Public
    constructor Create(einVater : tVater);
    Function GetVater: tVater;
  End;
  
constructor tVater.Create(einName:String);
Begin
  Name:=EinName;
End;
  
function tVater.Geburt: tSohn;
Begin
  Result:=tSohn.Create(self);
End;

constructor tSohn.Create(einVater : tVater);
Begin
  Vater:=einVater;
End;
    
Function tSohn.GetVater: tVater;
Begin
  Result:=Vater;
end;



   Vater:=tVater.Create;
   Sohn:=Vater.Geburt;
   showmessage(Sohn.GetVater.Name);

Meine Frage ist, kann ich das ganze auch als Referenz machen???
Ich hab die Befürchtung, dass ich zu viel Speicher belege. Denn in meinem Beispiel ist die Klasse Vater sehr groß und die Objekte
vom typ tSohn sehr zahlreich. Und wenn ich nun in jedem Sohn den Vater in Wertsemantik vorhalte...

Ich hoffe, ich hab nach einem langen Arbeitstag mein Problem noch deutlich Darstellen können.

[edit=sakura] Buchstabendreher im Titel korrigiert. Mfg, sakura[/edit]
  Mit Zitat antworten Zitat