我显然是初学者,我有错误,说检查运行时错误#2 - 变量'游戏'的堆栈已损坏。
我正在尝试将我的电路板初始化为单独的功能,因此我可以根据输入更改电路板。这就是为什么我有两个功能来做到这一点。 我不明白为什么,有人可以帮忙吗?
#include <iostream>
using namespace std;
class ticTacToe
{
private:
char board[3][3];
public:
void initiate();
void postboard();
};
int main()
{
ticTacToe game;
game.initiate();
game.postboard();
}
void ticTacToe::initiate()
{
board[3][3] = '0';
int n = 1;
for (int x=0; x<3; x++)
{
for (int y=0; y<3; y++)
{
board[x][y] = '0' + n++;
}
}
}
void ticTacToe::postboard()
{
for (int x=0; x<3; x++)
{
for (int y=0; y<3; y++)
{
cout << " " << board[x][y] << " ";
}
cout << endl;
}
}
答案 0 :(得分:0)
你不能这样做
board[3][3] = '0';
您正尝试将char
'0'
分配给[3][3]
的元素board
,但board
的唯一有效索引是[0]
} [2]
你也做不到
board[x][y] = '0' + n++;
因为它会产生undefined behavior