BlitzArray Größe ändern
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
ProducerBetreff: BlitzArray Größe ändern |
Di, Jul 01, 2008 0:29 Antworten mit Zitat |
|
---|---|---|
Ich bin hier grad mal wieder am verzweifeln mit BlitzMax...
Und zwar hab ich ein 2-dimensionales Array, z.b.: Code: [AUSKLAPPEN] Global MeinArray:Int[2,2]
So... Nun möchte ich aber zur Laufzeit gerne die Größe ändern - dabei kann der Inhalt des Arrays gerne verloren gehen - und zwar soll das Array dann z.B. Eine Größe von MeinArray:Int[4,7] haben - aber wie soll ich das bei Blitzmax anstellen... Code: [AUSKLAPPEN] Global MeinArray:Int[4,7]
lässt sich zwar ausführen, aber ich bekomme dann nen MAV sobald ich ein Element von MeinArray anspreche das es vor der Neudeklaration nicht gab. Ich Hab hier zwar auch einen Thread zu dem Thema gefunden - aber da wird das ja mittels Dim gelöst - was es ja bei BM nicht gibt... Das einzige was ich "nicht" möchte ist den Array gleich mit [4,7] zu deklarieren - Hintergrund: Ich lese die Anzahl der Arrayelemente aus einer Datei aus - würde ich den Array also gleich mit z.B. [4,7] deklarieren könnte es auch sein das der Array stattdessen auf [600,2] erweitert werden soll. Und da sich verschiedene Dateien zur Laufzeit einlesen lassen sollen lässt sich das auch nicht vor die Deklaration packen.... Ich hoffe ihr könnt mir helfen. Vielen Dank schonmal... |
||
in this world, all i got is my word and my balls, and i don't break em for nobody |
Dreamora |
Di, Jul 01, 2008 0:42 Antworten mit Zitat |
|
---|---|---|
Es gibt in BM keine "Blitz Arrays", nur Arrays.
Multidimensionale Arrays kannst du nicht vergrössern / verkleinern. Wenn du jedoch den Inhalt nimmer brauchst kannst du hier zb einfach new Int[4,7] nutzen. Wenn du vergrössern / verkleinern willst musst du Array of Array nutzen sowie Slices. Slices sind in der Dokumentation sehr gut beschrieben. |
||
Ihr findet die aktuellen Projekte unter Gayasoft und könnt mich unter @gayasoft auf Twitter erreichen. |
Producer |
Di, Jul 01, 2008 1:16 Antworten mit Zitat |
|
---|---|---|
Dreamora hat Folgendes geschrieben: Es gibt in BM keine "Blitz Arrays", nur Arrays.
Multidimensionale Arrays kannst du nicht vergrössern / verkleinern. Wenn du jedoch den Inhalt nimmer brauchst kannst du hier zb einfach new Int[4,7] nutzen. Wenn du vergrössern / verkleinern willst musst du Array of Array nutzen sowie Slices. Slices sind in der Dokumentation sehr gut beschrieben. Oh, ja stimmt... "Arrays" - mein ich ja... Vielen Dank für deine Hilfe - funktioniert super! (mit "new Int[4,7]") |
||
in this world, all i got is my word and my balls, and i don't break em for nobody |
Ascendic |
Mo, Sep 08, 2008 12:24 Antworten mit Zitat |
|
---|---|---|
Global map:Int[2,2]
sry, habs noch nicht ganz verstanden. Wie muss die array-zeile dann aussehen (in bb: Dim map(4,7)) map = New Int[4,7] ??? mfg, Padde |
||
mail: info@ascendic.com
icq: 413434626 VFX: http://youtube.com/watch?v=TBPZ40y0VB8 User posted image |
Jolinah |
Mo, Sep 08, 2008 18:01 Antworten mit Zitat |
|
---|---|---|
Du kannst eine Array-Variable auch ohne Grössenangabe deklarieren, und sie muss auch nicht Global sein wie bei BB:
Code: [AUSKLAPPEN] Local map:Int[,] = new Int [2,2]
... map = new Int[4,7] |
||
Ascendic |
Mi, Sep 10, 2008 19:18 Antworten mit Zitat |
|
---|---|---|
Funktioniert, vielen Dank | ||
mail: info@ascendic.com
icq: 413434626 VFX: http://youtube.com/watch?v=TBPZ40y0VB8 User posted image |
Übersicht BlitzMax, BlitzMax NG Beginners-Corner
Powered by phpBB © 2001 - 2006, phpBB Group