我是 C++ 新手,但我很了解 C#、java。但是不要紧。我想创建跳棋游戏仿真。我为窗口添加了新事件 - 加载。这是我所做的事情的来源:
private: System::Void Form1_Load(System::Object^ sender, System::EventArgs^ e) {
int matr[7][7];
int i, j;
int prevBlack = 1;
int prevRow = 0;
int current = 0;
for (i = 0; i < 8; i++)
{
if ((i + 1) % 2 == 0)
{
prevBlack = 0;
}
else
{
prevBlack = 1;
}
for (j = 0; j < 8; j++)
{
if (prevBlack == 1)
{
current = 0;
}
else if (i == 0 || i == 1 || i == 2)
{
current = 2;
}
else
{
current = 1;
}
matr[i][j] = (int)current;
if (current == 1 || current == 2)
{
prevBlack = 1;
}
else
{
prevBlack = 0;
}
}
prevRow = i;
}
}
问题是matr[i][j] = (int)current;
在这部分代码的末尾,我的程序退出了。当这部分代码被注释时,将显示窗口。
我不知道为什么会这样。数组是 8 x 8。我需要你的帮助 :)