C++ 多维数组数据成员的运行时错误
我已经开始开发一个解决数独问题的程序,并创建了一个名为SudokuSolver的类来封装“数独求解器”。类中有一个多维数组来存储数独的数据。该程序编译得很好,但当我运行它时,会抛出一个运行时异常,指示在箭头所指的行中存在访问冲突:C++ 多维数组数据成员的运行时错误,c++,arrays,class,C++,Arrays,Class,我已经开始开发一个解决数独问题的程序,并创建了一个名为SudokuSolver的类来封装“数独求解器”。类中有一个多维数组来存储数独的数据。该程序编译得很好,但当我运行它时,会抛出一个运行时异常,指示在箭头所指的行中存在访问冲突: class SudokuSolver { private: int sudoku[9][9]; bool valid(int sodoku[9][9]); bool solve(int x,int y); bool repeat(int
class SudokuSolver
{
private:
int sudoku[9][9];
bool valid(int sodoku[9][9]);
bool solve(int x,int y);
bool repeat(int x,int y,int num);
public:
SudokuSolver();
bool setSudoku(int sudoku[9][9]);
bool solveSudoku();
void printSudoku()const;
};
SudokuSolver::SudokuSolver()
{
for(int i = 0;i < 9;++i)
for(int j = 0;j < 9;++i)
------->--->---> sudoku[i][j] = 0;
}
SudokuSolver类
{
私人:
国际数独[9][9];
bool有效(int sodoku[9][9]);
布尔解算(整数x,整数y);
布尔重复(整数x,整数y,整数num);
公众:
SudokuSolver();
boolsetsudoku(int数独[9][9]);
布尔数独();
void printSudoku()常量;
};
SudokuSolver::SudokuSolver()
{
对于(int i=0;i<9;++i)
对于(int j=0;j<9;++i)
------->--->--->数独[i][j]=0;
}
你能告诉我这里发生了什么吗???这是我的作业,所以非常紧急。问题是你在第二个循环中完成了++i
SudokuSolver::SudokuSolver()
{
for(int i = 0;i < 9;++i)
for(int j = 0;j < 9;++i) //Your error is here..
sudoku[i][j] = 0;
}
SudokuSolver::SudokuSolver()
{
对于(int i=0;i<9;++i)
对于(int j=0;j<9;++i)//您的错误在这里。。
数独[i][j]=0;
}
应该是:
SudokuSolver::SudokuSolver()
{
for(int i = 0;i < 9;++i)
for(int j = 0;j < 9;++j)
sudoku[i][j] = 0;
}
SudokuSolver::SudokuSolver()
{
对于(int i=0;i<9;++i)
对于(int j=0;j<9;++j)
数独[i][j]=0;
}
这个问题似乎离题了,因为它是关于一个简单的打字错误。请参阅“谢谢”上的元讨论。我的问题解决了。