Ich schüttele meinen Programmierrost ab und schraube herum mit Einheit, aber ich laufe während meiner Initialisierung in eine NullReferenceException
.Initialisiere 2d-Array, das immer noch Nullreferenzen verursacht
ich das Snippet unten
public class Map : MonoBehaviour
{
int[,] Tile;
int sizeX;
int sizeY;
void Start()
{
for (int posX = 0; posX != sizeX; posX++)
{
for (int posY = 0; posY != sizeY; posY++)
{
Tile[posX, posY] = new int() 0;
}
}
}
}
die Linie
ein 2D-Array von ganzen Zahlen in einer Klasse sehen habenTile[posX,posY] = new int() 0;
werfen Nullverweis hält, ich habe versucht, es eine Reihe von Möglichkeiten zu initialisieren und habe meine Struktur so geändert, dass ich Int-Container anstelle von Spielobjekten benutze, wie ich es beabsichtigt hatte, aber ich lief immer noch auf diesen Fehler.
Alle meine Forschung sagt mir, ich muss initialisieren, aber in meinen Gedanken bin ich! Wo bin ich falsch gelaufen? Entschuldigen Sie sich im Voraus, wenn ich bei meinen Suchanfragen etwas verpasst habe oder jemand Zeit verschwendet, indem ich diese Frage stelle.
Danke
Sie nicht Tile initialisiert wurde: 'int [,] Tile = new int [sizeX, sizeY];' Wenn Sie das tun, Es enthält alle Nullen, also ist die Schleife nicht notwendig. Auch "new int() 0;" ist kein gültiger Code –
Ich möchte Ihnen dafür danken, dass Sie so schnell reagiert haben. Ich habe das Gefühl, dass ich diese Sache letzte Nacht vergeblich versucht habe! Aber ich versuche es heute und genau das, was du gesagt hast, hat funktioniert. Vielen Dank. – DevSol