Short Array geht nicht
Übersicht

LadorBetreff: Short Array geht nicht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo.
Ich mache gerade einen Mapeditor für einen Freund. Und dann wollte ich eine Neu-Funktion einbauen. Wollte das erst auf umständliche Weise machen, aber als ich in der BlitzMax-Hilfe nach einem Befehl suchte, fand ich zufällig einen Artikel über "Arrays" (Language reference -> Arrays). Dort steht, dass man eine leeres Array anlegen und dann neu erstellen kann. Bei mir sieht das so aus: Code: [AUSKLAPPEN] ... Global mapwidth = 80, mapheight = 60 Global map:Short[] ... map = New Short[mapbreite,maphoehe,4] ... Jetzt kommt bei mir die Fehlermeldung " Unable to convert from 'short array' to 'short array' ". Habe ich den Artikel nur nicht ganz verstanden, oder ist das ein Bug von BlitzMax? MFG Lador |
||
![]() |
kog |
![]() Antworten mit Zitat ![]() |
---|---|---|
Code: [AUSKLAPPEN] ...
Global mapwidth = 80, mapheight = 60 Global map:Short[,,] ... map = New Short[mapbreite,maphoehe,4] ... so sollte es richtig sein. Du musst mit Kommas die Dimensionen definieren, auch wenn 0 0 0 ist. Hoffe es geht |
||
Lador |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Nein geht leider nicht. "Attempt to index array element beyond array length". Wahrscheinlich sieht der Compiler es als 0,0,0.
MFG Lador |
||
![]() |
kog |
![]() Antworten mit Zitat ![]() |
---|---|---|
wenn du das New Short machst, oder wenn du daten einfügst? | ||
#ReaperNewsposterBetreff: Re: Short Array geht nicht |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Lador hat Folgendes geschrieben: Code: [AUSKLAPPEN]
... Global mapwidth = 80, mapheight = 60 ... map = New Short[mapbreite,maphoehe,4] ... Was fällt dir an deinen Variablen mapwidth und mapheight auf? ![]() Ich möchte dich nicht zappeln lassen, aber bei New ... verwendest du dann aufeinmal mapbreite und maphoehe. Ich glaube so war das nicht gedacht, oder? ![]() |
||
AMD Athlon 64 3500+, ATI AX800 Pro/TD, 2048 MB DRR 400 von Infineon, ♥RIP♥ (2005 - Juli 2015 -> sic!)
Blitz3D, BlitzMax, MaxGUI, Monkey X; Win7 |
![]() |
kog |
![]() Antworten mit Zitat ![]() |
---|---|---|
LOL ^^ den fehler habe ich übersehen, das ist grantiert der.
Arbeitest du nicht mit SuperStrict? |
||
Lador |
![]() Antworten mit Zitat ![]() |
|
---|---|---|
Hallo.
Zuerst einmal danke für alle Antworten. Jetzt funktioniert es. Hatte diese Zeile vorher in einer Funktion, daher hatte ich mapbreite und maphoehe. Und ich habe die Zeile einfach herauskopiert... Was genau bringt denn SuperStrict? Ich habe mir gerade die Hilfe zu Strict angesehen. Ist das dann für das bessere Fehlerfinden? Naja, wenigstens war ich nicht der einzige, der den Fehler übersehen hat.^^ MFG Lador |
||
![]() |
BladeRunnerModerator |
![]() Antworten mit Zitat ![]() |
---|---|---|
strict als auch superstrict zwingen dich zum sauberen arbeiten.
Unter superstrict wird bmax jede variable mokieren die du nicht ausdrücklich samt scope definiert hast, Probier es aus: Code: [AUSKLAPPEN] 'superstrict local test:int= 345 test2:int = 456 tast = 678 print test führ den code mit und ohne superstrict aus, und du wirst sehen dass nur korrekt initialisierte Variablen durchgehen. Damit kann man bugs durch Verschreiber wie den deinen idR ausschliessen. |
||
Zu Diensten, Bürger.
Intel T2300, 2.5GB DDR 533, Mobility Radeon X1600 Win XP Home SP3 Intel T8400, 4GB DDR3, Nvidia GF9700M GTS Win 7/64 B3D BMax MaxGUI Stolzer Gewinner des BAC#48, #52 & #92 |
Übersicht


Powered by phpBB © 2001 - 2006, phpBB Group