2016-08-02 3 views
0

私はプログラミングの錆を揺さぶっていますが、ユニティでねじ止めしていますが、私は初期化中にNullReferenceExceptionに入っています。まだ2次元アレイを初期化してもヌル参照を引き起こします

Iクラスの整数の2次元配列は

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; 

       } 
      } 
    } 
} 

以下スニペット線

Tile[posX,posY] = new int() 0; 

がnull参照を投げ続ける参照持って、私はそれをいくつかの方法を初期化することを試みたとゲームオブジェクトの代わりにintコンテナを使用するように私の構造を変更しましたが、まだこのエラーが発生しました。

すべての私の研究は私が初期化する必要があると私に言いますが、私は私の心の中にいます!どこが間違っていたのですか?私が検索クエリで何かを忘れた場合、またはこの質問を投稿して誰かの時間を無駄にしている場合は、事前にお詫びしてください。

+1

あなたはタイルを初期化できませんでした: 'int型[、]タイル=新しいint型[SIZEX、SIZEY];'あなたが行うと、すべての0を含むので、ループは必要ありません。また、 'new int()0;'は有効なコードではありません –

+0

すぐに応答していただきありがとうございます。私はこの昨夜、全く同じことを無駄にしたような気がする!しかし、私は今日それを試して、まさにあなたが働いたと言いました。 ありがとうございます。 – DevSol

答えて

1

まあありがとう、あなたの配列が初期化されていないので、あなたは、このエラーが発生します。

あなたは配列のフィールドを初期化しているTile[x,y] = some intを使用して、そのほかにTile = new int[sizeX, sizeY];

のような何かが欠けています。

(ところでnew int() 0私が聞いたされていないいくつかの空想の構文です?)

関連する問題