科学コードを Java から C++ に移行しています。教えてください:
a) 2 つの関数の何が問題になっていますか?
b) どうすれば問題を解決できますか? int**
を2 次元配列のように使用できますが、 Agent**
.
「このオペランドに一致する演算子 = がありません」というエラーが表示されます。
通常の C では、ポインタに NULL を割り当てることができました。type**
2 次元配列 (つまり ) のようなものを使用することもできます(とa[i][j]
の 2 次元空間は別の場所に割り当てられます)。objectSpace
agentSpace
int** objectSpace;
Agent** agentSpace;
void Space::removeAgentAt(Point p)
{
agentSpace[p.x][p.y] = NULL;
}
void Space::putAgentTo(Agent agent, Point p)
{
agentSpace[p.x][p.y] = agent;
}