オブジェクトの 2D 配列 (基本的には XY 座標系) を作成しようとしていますが、方法がわかりません。Tile オブジェクトを作成する Map クラスがあります。Map クラスのコンストラクターで、Tile オブジェクトの 2D ジャグ配列を作成するコードを記述しました。
これが機能しない理由はわかりません。以前は整数の 2D ギザギザ配列を作成していましたが、それは正常に機能していました。
エラーの原因は何ですか?オブジェクトの配列を作成するにはどうすればよいですか?
これは私が得ているエラーです:
Unhandled Exception: System.NullReferenceException: Object reference not set to
an instance of an object.
at ObjectArray.Map..ctor(Int32 NumberOfRows, Int32 NumberOfColumns) in C:\Use
rs\Lloyd\documents\visual studio 2010\Projects\ObjectArray\ObjectArray\Map.cs:li
ne 27
at ObjectArray.Program.Main(String[] args) in C:\Users\Lloyd\documents\visual
studio 2010\Projects\ObjectArray\ObjectArray\Program.cs:line 18
マイ Tile.cs
class Tile
{
public int TileID { get; set; }
}
そして私のMap.cs:
class Map
{
private Tile[][] TileGrid;
public int Columns { get; private set; }
public int Rows { get; private set; }
public Map(int NumberOfRows, int NumberOfColumns)
{
Rows = NumberOfRows;
Columns = NumberOfColumns;
TileGrid = new Tile[NumberOfRows][];
for (int x = 0; x < TileGrid.Length; x++)
{
TileGrid[x] = new Tile[NumberOfColumns];
}
//Test for the right value.
TileGrid[0][0].TileID = 5;
Console.WriteLine(TileGrid[0][0].TileID);
}
}