Referenz - EXTERN (Module)
Syntax: EXTERN [IMPORT] Bezeichner [ALIAS "Aliasname"] [AS Typ]
Typ: Anweisung
Kategorie: Programmorganisation
EXTERN wird benutzt, um auf externe Variablen zuzugreifen, die in anderen Modulen oder DLLs deklariert sind. Im Gegensatz zu COMMON wird kein Speicherplatz reserviert, die Variable wird lediglich definiert und zeigt auf den Speicherbereich des anderen Moduls. Es wurde hinzugefügt, um die C-Bibliotheken wie Allegro und DirectX zu unterstützen.
- 'IMPORT' muss verwendet werden, wenn auf Win32-DLLs zugegriffen wird, da hier Symbole auf eine andere Art verwaltet werden.
- 'Bezeichner' ist der Name, unter dem eine globale Variable der DLL oder des Moduls angesprochen werden soll.
- 'Aliasname' ist der Name, den die Variable im externen Programm trägt.
- 'Typ' ist ein beliebiger Datentyp wie z.B. INTEGER oder ein UDT (user defined type; siehe TYPE)
Seit FreeBASIC v0.15 kann eine Variable mehrmals EXTERN deklariert werden, sofern bei dieser Deklaration der selbe Datentyp angegeben wird.
Eine als EXTERN definierte Variable benötigt kein
SHARED (die Syntax erlaubt dies auch nicht), da diese Variablen automatisch global im Modul zur Verfügung stehen.
Beispiel:
' Modul1.bas
EXTERN foo ALIAS "foo" AS INTEGER
SUB SetFoo
foo = 1234
END SUB
'------'
' Modul2.bas
DECLARE SUB SetFoo
EXTERN Foo ALIAS "foo" AS INTEGER
DIM foo AS INTEGER = 0
SetFoo
PRINT Foo
Unterschiede zu QB: Neu in FreeBASIC.
Unterschiede zu früheren FreeBASIC-Versionen:
- Seit FreeBASIC v0.15 sind doppelte EXTERN-Deklarationen zulässig, sofern beide Male derselbe Datentyp angegeben wird.
- Existiert erst seit FreeBASIC v0.11
Siehe auch:
COMMON,
DIM,
REDIM,
PRESERVE,
SHARED,
STATIC,
ALIAS
| Zusätzliche Informationen und Funktionen | ||||
|---|---|---|---|---|
|
||||




FreeBASIC-Nachrichten jetzt auch über Twitter erhalten. Follow us!
Versionen