Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Variable umleiten (https://www.delphipraxis.net/20156-variable-umleiten.html)

himitsu 14. Apr 2004 09:28


Variable umleiten
 
Mahlzeit ...


Ich hab in einer Unit eine Variable (Boolean), aber ich möchte auf diese in meine Hauptunit mit einem anderen Variablennamen zugreigen, ohne den Namen in der Unit zu ändern.

Also eine andere Variable (möglichts auch Boolean) auf deren Speicher umleiten.

Das ist, um Missverständnissen aus dem Weg zu gehn, aber im restlichen Quelltext möchte ich BoolA wie eine normale Variable verwenden (ohne Zeiger-Dereferenzierung und so - ^)

Ich könnte das ja mit PBoolean machen, aber geht das nicht auch irgendwie mit einer normalen Bollischen-Variable?


Delphi-Quellcode:
Unit UnitB;

Interface
Var BoolB: Boolean = True;
...
Delphi-Quellcode:
Unit UnitA;

Interface
Uses UnitB;

Var BoolA: Boolean; // Damit möchte ich auf den Speicher von BoolB zugreifen
...

[ADD]
Also wie gesagt, so geht es ja, aber dann ist immer diese ^ vorhanden.
Delphi-Quellcode:
Var BoolB: Boolean = True;

Var BoolA: PBoolean = @BoolB;

...

If BoolA^ Then ...

BoolA^ := ...

Chewie 14. Apr 2004 09:43

Re: Variable umleiten
 
Ich dachte zuerst, dass das nicht geht, aber ich habs ausprobiert:

Deine UnitB kann so bleiben, wie sie ist. Und UnitA änderst du so:

Delphi-Quellcode:
Unit UnitA;

Interface
Uses UnitB;

Var BoolA: Boolean absolute UnitB.B;

maximov 14. Apr 2004 10:20

Re: Variable umleiten
 
Zitat:

Zitat von himitsu
...
Also wie gesagt, so geht es ja, aber dann ist immer diese ^ vorhanden.

IMO kannst du das dereferenzierungs-symbol (^) auf weg lassen, delphi erkennt das automatisch aus dem kontext! Also würde deine variante auch so funken.

himitsu 14. Apr 2004 10:39

Re: Variable umleiten
 
Danke, das mit absolute geht.


@maximov:
geht leider nicht, dann kommt immer "[Fehler] ... Ausdruckstyp muss BOOLEAN sein"

Phoenix 14. Apr 2004 10:43

Re: Variable umleiten
 
Zitat:

Zitat von Chewie
Delphi-Quellcode:
Var BoolA: Boolean absolute UnitB.BoolB;

Wäre richtiger :)


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