Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Algorithmen, Datenstrukturen und Klassendesign (https://www.delphipraxis.net/78-algorithmen-datenstrukturen-und-klassendesign/)
-   -   Objekt hat andere Adresse als zugewiesenes Objekt (https://www.delphipraxis.net/192393-objekt-hat-andere-adresse-als-zugewiesenes-objekt.html)

enigma 14. Apr 2017 17:02

Objekt hat andere Adresse als zugewiesenes Objekt
 
Hallo zusammen,
ich verstehe folgendes Problem nicht:
lList wird die Referenz auf TObjectList<TDN>(AObject) übergeben.

Wie unten zu sehen, hat TObjectList<TDN>(AObject) dieselbe Adresse wie AObject
(ist ja nur eine einfache Typumwandlung).
Allerdings hat lList eine andere! Adresse!
Mein Kenntnisstand ist bis jetzt der, dass Objekte bei Wertzuwiesung auf dieselbe
Adresse zeigen.

Vielen Dank für eure Tipps ;-)

Delphi-Quellcode:
  TDN = class
    ...
  end;

procedure freeAndNilRek2_3(AObject: TObject);
   var
    lList: TObjectList<TDN>;

   lList := TObjectList<TDN>(AObject);
   
ShowMessage('Integer(@AObject) = ' + IntToStr(Integer(@AObject)) +#13+
           {Selbe Adresse wie AObject} 
         'Integer( @TObjectList<TDN>(AObject) ) = ' + IntToStr(Integer( @TObjectList<TDN>(AObject) ) ) +#13+
           {Andere Adresse wie AObject} 
            'Integer(@lList) = ' + IntToStr(Integer(@lList) ) );
end;

himitsu 14. Apr 2017 17:08

AW: Objekt hat andere Adresse als zugewiesenes Objekt
 
Warum nochmal genau das Selbe?

http://www.delphipraxis.net/192391-o...zuweisung.html


Alle Zeitangaben in WEZ +1. Es ist jetzt 14:00 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz