GLBasic forum

Other languages => GLBasic - de => Topic started by: HeikoJ on 2007-Sep-14

Title: Nochmals TYPE
Post by: HeikoJ on 2007-Sep-14
Hallo,

ich habe ein Projekt, welches aus vielen einzelnen Dateien besteht.
Nun habe ich in Datei A eine TYPE-Deklaration. z.B.

GLOBAL Player AS TPlayer

TYPE TPlayer
....
  found[5]
ENDTYPE

Wenn ich jetzt in Datei B darauf zugraifen will, z.B.

nr = Player.found

kommt folgender Fehler :

error: wrong argument type : TYPE ist not declared

Eigentlich sollte doch der Compiler/Linker alle Definitionen finden, egal in welcher Datei
sie stehen, zumal die Variable Player als GLOBAL definiert ist.

Gruß Heiko
Title: Nochmals TYPE
Post by: Schranz0r on 2007-Sep-14
Hab grad mal getestet !

Also an dem was du gepostet hast stimmt alles...

bei mir gehts!

Poste mal mehr Code evtl ist wo anders ein Fehler drin ?!
Groß - kleinschreibung ?
Title: Nochmals TYPE
Post by: Kitty Hello on 2007-Sep-15
Oh Mist. Für DIMDATA muss ich wissen, was das für ein Typ ist - genau _hier_.
Darum müsste man vorher nochmal schreiben: GLOBAL Player AS TPlayer. Den kennt er hier nicht, wenn die Deklaration später erfolgt.
Ist das akzeptabel?
Title: Nochmals TYPE
Post by: Schranz0r on 2007-Sep-15
Nochmal, hab ich das jetzt richtig verstanden ?

Man muss doch erst den Type Deklarieren, und dann den Player AS TPlayer machen oder?

Sonnst erkennt er den ja nicht, da er den ja noch nicht abgearbeitet  hat ?!
Title: Nochmals TYPE
Post by: Kitty Hello on 2007-Sep-17
Bin gerade auch etwas verwirrt. Ich würde eine Funktion machen: InitMyType: t AS MyType
und die unter das TYPE/ENDTYPE schreiben. Das ist halt leider gerade bei DIMDATA so. Alles andere wird erst nachher geprüft, wenn er alle types kennt.
Title: Nochmals TYPE
Post by: HeikoJ on 2007-Sep-17
Hallo Gernot,

genauso habe ich es dann auch gemacht.

Habe mir eine Init-Funktion geschrieben, auf der ich dann von überall
zugreifen kann.

Danke und Gruß

Heiko