import Problem
Übersicht BlitzMax, BlitzMax NG Allgemein
SergeBetreff: import Problem |
Do, Feb 10, 2005 22:29 Antworten mit Zitat |
|
---|---|---|
Habe z. B. zwei folgende Dateien:
Code: [AUSKLAPPEN] Import "typeA.bmx" Type typeB field pointer:typeA EndType Code: [AUSKLAPPEN] import "typeB.bmx" Type typeA field pointer:typeB EndType Wie man sieht müssen sich die beiden Dateien gegenseitig importieren. Jedoch entsteht dadurch ein Fehler wegen Doppeldeklaration Wie löse ich dies? |
||
http://www.dark-matter-soft.de |
Demon |
Fr, Feb 11, 2005 8:39 Antworten mit Zitat |
|
---|---|---|
Da Include offensichtlich noch nicht funktioniert, würde ich vorschlagen beide Types in eine Datei zu schreiben. | ||
Don't drink and derive! |
morszeck |
Fr, Feb 11, 2005 20:05 Antworten mit Zitat |
|
---|---|---|
Das ist ja wohl klar... du kannst die Dateien doch nicht gegenseitige importieren...
ist gibt eine Main-Datei die weiterführend alle restlichen Includes, bzw Imports beinhaltet.... Es macht auch wenig Sinn, so wie du es lösen willst... Unter C sollte dies aber funktionieren, aber BMX ist halt kein C.... |
||
adbaBetreff: hmm |
So, Feb 13, 2005 14:34 Antworten mit Zitat |
|
---|---|---|
Es bräuchte wie in C ein Ifndef anweisung die einen imprt nur macht wenn (if) noch nicht (n) definiert (def) wurde. In c etwa so:
#Ifndef typeB #include "typeB.bmx" #endif In BMax vermutlich so: Ifndef typeB import "typeB.bmx" endif aber ob es so was in bmax gibt / geben wird weiss ich nicht. Das ist überigens kein normales if sondern eine precompiler anweisung. das heisst das wird noch vor dem compilieren durgearbeitet. |
||
Serge |
Mo, Feb 28, 2005 23:54 Antworten mit Zitat |
|
---|---|---|
Ja wäre interessant ob es "compilerif" oder sowas gibt?
Alle in der Main zu importieren und gegenseitig nicht zu importieren spuckt nen fehler aus dass eben dies und das in den einzelnen dateien nicht definiert ist (z. B. in typeB weis er nicht was typeA ist). Also muss ich wohl mit include arbeiten. |
||
http://www.dark-matter-soft.de |
Dreamora |
Di, März 01, 2005 0:09 Antworten mit Zitat |
|
---|---|---|
Es wäre einfacher das ganze Programmdesign nochma anzusehen. Die situation tritt eigentlich nur dann ein, wenn man fröhlich drauflos auf der tastatur rumhackt und nicht durchdacht arbeitet.
ansonsten entstehen logische source kapselungen, die das problem beseitigen ( sollten ) Alternativ dazu kann man den Header Ansatz von C nehmen: Einfach einen import machen wo abstrakte Versionen der Types enthalten sind und auf diesen Aufbauen ( Java lässt grüssen ) und die importieren und halt entsprechend alles extenden. Hängt immer vom Fall ab was mehr bringt / sinnvoller ist. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Übersicht BlitzMax, BlitzMax NG Allgemein
Powered by phpBB © 2001 - 2006, phpBB Group