Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Gültigkeitsbereich der Compiler directive TypeInfo On (https://www.delphipraxis.net/200084-gueltigkeitsbereich-der-compiler-directive-typeinfo.html)

TheFrog 18. Mär 2019 11:08

Delphi-Version: 5

Gültigkeitsbereich der Compiler directive TypeInfo On
 
Hallo Experten,

in unserem Projekt verwenden wir immer wieder die Compiler directive {$TypeInfo on}.
Mir ist leider nicht ganz klar, wie der Gültigkeitsbereich (scope) dieser Anweisung ist. In der Hilfe wird der scope als local angegeben.

Was genau bedeutet dies aber?

Beispiel 1:

Delphi-Quellcode:
unit MyUnit;

interface

{$TypeInfo On}
type
  MyClass1 = class(TObject)
  end;

  MyClass2 = class(TObject)
  end;

implementation

end.
Gilt die directive hier für beide Klassen?

Beispiel 2:

Delphi-Quellcode:
unit MyUnit;

interface

type
  {$TypeInfo On}
  MyClass1 = class(TObject)
  end;

  MyClass2 = class(TObject)
  end;

implementation

end.
Gilt diese hier nur für MyClass1? Und muss ich diese danach wieder ausschalten?

Beispiel 3:

Delphi-Quellcode:
{$TypeInfo On}
unit MyUnit;

interface

type
  MyClass1 = class(TObject)
  end;

  MyClass2 = class(TObject)
  end;

implementation

end.
Gilt die Directive hier für alle Klassen innerhalb der Unit?

Vielen Dank fürs Licht ins Dunkel bringen, Hans.

peterbelow 18. Mär 2019 11:19

AW: Gültigkeitsbereich der Compiler directive TypeInfo On
 
"Lokal" bedeutet, das die Direktive von der Zeile, in der sie steht, gilt, bis entweder ein {$Typeinfo off} oder das Ende der Unit erreicht wird.

TheFrog 18. Mär 2019 11:52

AW: Gültigkeitsbereich der Compiler directive TypeInfo On
 
So einfach ist das :)

Vielen Dank für die Info!


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