Vererbung reduzieren (oder so) ~erledigt~

Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Neue Antwort erstellen

 

Zwer99

Betreff: Vererbung reduzieren (oder so) ~erledigt~

BeitragSo, Apr 11, 2010 14:53
Antworten mit Zitat
Benutzer-Profile anzeigen
Hallo Leute!

Ich hab ein kleines Problemchen mit Sub-Klassen, die von einer Superklasse erben.

Ein kleines Beispiel macht es wohl ein bisschen verständlicher:

Code: [AUSKLAPPEN]


Type A
   
   Field X
   Field Y
   
EndType

Type B1 Extends A
   
   Field W
   Field H
   
EndType

Type B2 Extends A
   
   Field Radius
   Field Speed
   
EndType


Type C
   
   Field test:A
   
EndType


Local B1Test:B1 = New B1
Local B2Test:B2 = New B2
Local CTest:C = New C
CTest.test = B1



Das Programm endet mit "Unable to Convert from 'Type' to 'A' "

Ich habe in meinem Programm verschiedene Objekte, die einige Sachen gemeinsam haben. In Type C will ich sowohl B1, als auch B2-Types aufnehmen können.
Natürlich greife später ich nur auf Variablen zu, die in "A" enthalten sind.

Ich habe mir gedacht, dass es auf jeden Fall funktionieren muss, weil ja "String" auch zu "Object" gecastet werden kann. Oder habe ich evtl. etwas falsch verstanden?
Gibt es vielleicht eine andere Lösung? Oder habe ich es einfach falsch geschrieben?


Danke für eure Überlegungen und Antworten!


MfG, Zwer99
1. Platz: BAC #126 BAC #60 | 2.Platz: BCC #36 | 3. Platz: BCC #18 | Pfurz: BCC #20

Ovion Entertainment
  • Zuletzt bearbeitet von Zwer99 am So, Apr 11, 2010 15:21, insgesamt einmal bearbeitet

Xeres

Moderator

BeitragSo, Apr 11, 2010 14:58
Antworten mit Zitat
Benutzer-Profile anzeigen
Statt
Code: [AUSKLAPPEN]
CTest.test = B1

einfach...
Code: [AUSKLAPPEN]
CTest.test = B1Test

Wink
Win10 Prof.(x64)/Ubuntu 16.04|CPU 4x3Ghz (Intel i5-4590S)|RAM 8 GB|GeForce GTX 960
Wie man Fragen richtig stellt || "Es geht nicht" || Video-Tutorial: Sinus & Cosinus
T
HERE IS NO FAIR. THERE IS NO JUSTICE. THERE IS JUST ME. (Death, Discworld)
 

Zwer99

Betreff: Ich Dummerle

BeitragSo, Apr 11, 2010 15:21
Antworten mit Zitat
Benutzer-Profile anzeigen
Danke, Xeres!

Da hatte ich wohl einen Variablensturz. Und das gleich zwei mal! Wink
Naja, kann schon mal passieren...

Jedenfalls funktioniert es jetzt wie es soll.
1. Platz: BAC #126 BAC #60 | 2.Platz: BCC #36 | 3. Platz: BCC #18 | Pfurz: BCC #20

Ovion Entertainment

Neue Antwort erstellen


Übersicht BlitzMax, BlitzMax NG Beginners-Corner

Gehe zu:

Powered by phpBB © 2001 - 2006, phpBB Group