エラーの真相を突き止めようとしているのですが、助けていただけないでしょうか? 現在、配列ポインタに少し問題があります。いわば、3つのクラス、1人の親、2人の子供がいます。子の 1 つに struct 型の 2D 配列があり、もう 1 つの子からこの要素にアクセスしようとしています。
このコードは、配列ポインターの正しい形式/構文で有効ですか? OChild1 は 2D 配列を作成して入力します。そのポインターを Parent に保存し、そのポインターを OChild2 に渡します。その後、配列の内容を使用してさらに処理する予定です。
struct BOARDTILE
{
float fPosX;
float fPosY;
BOARDTILES()
{
fPosX = 0.0f;
fPosY = 0.0f;
}
};
class CChild1
{
public:
BOARDTILE BoardTileArray[18][18];
CChild1()
{
}
writeBoardTileArray()
{
for (int i = 0; i <= 17; i++)
{
for (int j = 0; j <= 17; j++)
{
BoardTileArray[i][j].fPosX = (float) i * 5.0f;
BoardTileArray[i][j].fPosY = (float) j * 7.0f;
}
}
}
};
class CChild2
{
public:
BOARDTILE (*pBoardTileArray)[18][18];
float fPosX;
float fPosY;
CChild2()
{
}
void readBoardTileArray()
{
for (int i = 0; i <= 17; i++)
{
for (int j = 0; j <= 17; j++)
{
fPosX = (*pBoardTileArray[i][j]).fPosX;
fPosY = (*pBoardTileArray[i][j]).fPosY;
cout << fPosX;
cout << fPosY;
}
}
}
};
class CParent
{
public:
BOARDTILE (*pBoardTileArray)[18][18];
CChild1 OChild1;
CChild2 OChild2;
CParent()
{
OChild1.writeBoardTileArray();
pBoardTileArray = &(OChild1.BoardTileArray);
OChild2.pBoardTileArray = pBoardTileArray;
}
};