$typedAddress/de

From Lazarus wiki
Revision as of 22:37, 29 March 2013 by Swen (talk | contribs)
Jump to navigationJump to search

Deutsch (de)

Zurück zu den lokalen Compilerdirektiven.

$TYPEDADDRESS und $T

Die Compiler Direktive $TYPEDADDRESS und $T sind in Ihrer Verwendung Synonym.
Die Compiler Direktive $TYPEDADDRESS, legt fest, ob der Operator @ (Adressoperator) einen typisierten oder einen untypisierten Pointer zurück gibt.
Die Compiler Direktive $T kennt zwei Schalter + und -.
Die Compiler Direktive $TYPEDADDRESS kennt zwei Schalter ON und OFF.

Beispiel für einen Fehler:

{$T+} // schaltet den typisierten Pointer ein
 
Var
  I : Integer;
  P : PChar;
 
begin
  P:=@I;
  // Der Compiler gibt folgende Fehlermeldung aus:
  // ... : Incompatible types: got "^SmallInt" expected "PChar" 
end.


In der Standardeinstellung übergibt der Adressoperator einen untypisierten Pointer.

Beispiel:

{$T-} // Die Standardeinstellung schaltet den typisierten Pointer aus

Var
  I : Integer;
  P : PChar;
 
begin
  P:=@I;
  // Der Compiler gibt keine Fehlermeldung aus
end.



--Olaf 09:05, 25 January 2013 (UTC)