Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Zahlenwert der Adresse ausgeben (Pointer?) (https://www.delphipraxis.net/114341-zahlenwert-der-adresse-ausgeben-pointer.html)

everdream 23. Mai 2008 15:48


Zahlenwert der Adresse ausgeben (Pointer?)
 
Hallo liebe DP!

Ich habe eine Objektinstanz in einer Variablen gespeichert. Diese Variable beinhaltet ja (soweit ich weiß) die Speicheradresse meiner Instanz. Nun möchte ich genau diese Speicheradresse anzeigen lassen. Wenn ich auf meine Variable zugreife geht Delphi ja erstmal davon aus, dass ich auf den Speicherbereich dahinter zugreifen will und gibt mir meine Objektinstanz, statt nur deren Adresse (was ja in 99,9% der Fälle auch gewünscht und extrem praktisch ist). Wie komme ich aber an den Zahlenwert, der wirklich in der Variablen steht?

himitsu 23. Mai 2008 15:54

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
ich würd spontan sowas denken :gruebel:

dund warum sollte Delphi davon ausgehen, daß ich das Objekt meine?
Delphi-Quellcode:
i := Integer(MyObject);

everdream 23. Mai 2008 16:00

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
Jo, sowas in der Art meinte ich.

Naja, Delphi behandelt die Variable solange als TMyObject, bis ich ihm sage (=Typecasting), dass es sie als etwas anderes benutzen soll.

Zacherl 23. Mai 2008 16:29

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
Zitat:

Zitat von himitsu
ich würd spontan sowas denken :gruebel:

dund warum sollte Delphi davon ausgehen, daß ich das Objekt meine?
Delphi-Quellcode:
i := Integer(MyObject);

Für gewöhnlich würde man eher nach Cardinal typecasten, da negative Speicheradressen ja sowieso nicht möglich sind.

Muetze1 23. Mai 2008 16:38

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
Zitat:

Zitat von Zacherl
Zitat:

Zitat von himitsu
ich würd spontan sowas denken :gruebel:

dund warum sollte Delphi davon ausgehen, daß ich das Objekt meine?
Delphi-Quellcode:
i := Integer(MyObject);

Für gewöhnlich würde man eher nach Cardinal typecasten, da negative Speicheradressen ja sowieso nicht möglich sind.

... und spätestens wenn man das Flag für 3.2 GB Speichernutzung im EXE Header setzen will...

himitsu 23. Mai 2008 17:22

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
Zitat:

Zitat von Muetze1
und spätestens wenn man das Flag für 3 GB Speichernutzung im EXE Header setzen will...

das macht man unter Delphi doch nicht :roll:

everdream 23. Mai 2008 18:04

Re: Zahlenwert der Adresse ausgeben (Pointer?)
 
Gut, meine Frage ist beantwortet. Vielen Dank! :dp:


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:37 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