![]() |
^ und @ = beides pointer?
moin,
siehe threadname, wo ist der unterschied zwischen diesen beiden "dingern" ? |
Re: ^ und @ = beides pointer?
@X gibt die Adresse eines Objektes (einer variablen) X zurück.
Für ^ gibt es 2 Möglichkeiten: 1. Bei der Deklaration: var X: ^Integer; Damit zeigt X auf einen Integer; 2. Jetzt musst du zuerst sagen, worauf X zeigen soll: X:=@Tag; //X zeigt auf den Tag-Integer. Wenn du nun in X oder Tag etwas schreiben möchtest geht das auch so: X^:=1; // Tag=1; X=... // weist Adresse zu X^= // weist Wert an der Adresse zu Hoffe, das kann man verstehen, sollte aber auch so ähnlich in der Hilfe stehen :stupid: |
Re: ^ und @ = beides pointer?
Moin Pseudemys Nelsoni,
mit @ fordert man die Adresse, z.B. einer Variablen ab (siehe auch Funktion Addr), mit ^ den Wert auf den die Variable zeigt (dereferenzieren genannt). Im Prinzip müsste man eigentlich bei jedem Zugriff auf z.B. die Eigenschaft/Methode eines Objektes dereferenzieren z.B.
Delphi-Quellcode:
da Form1 die Adresse des Objektes enthält, aber die "Compiler-Magic" macht dieses unnötig bzw. sogar unmöglich.
Form1^.Height := ...
// statt Form1.Height := ... |
Re: ^ und @ = beides pointer?
dankeschön ^^
wenn ich wieder komme guck ichs mir nochmal genauer an 8) |
Alle Zeitangaben in WEZ +1. Es ist jetzt 19:16 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz