类C 反向程序的麻烦
Trouble with Classes C++ Reversi Program
我在corversi游戏的C 程序上遇到了麻烦。基本上,我的问题是试图在退出功能后获得一个2D数组(这是一个私人类变量)。该数组被声明为类板的私人变量,如下所示:( max_ize = 10,但数组大小由主中的第一个参数控制。)
private:
//array variable for the board
char Board[MAX_SIZE][MAX_SIZE];
int BoardSize;
};
这是我创建木板的地方,将其设置为所有破折号开始。我用cout调试了它,以验证它的工作正常,而且确实如此。
void Board::CreateBoard(){
char Board[BoardSize][BoardSize];
//Sets the board to be all dashes
for (int i=0; i < BoardSize; i++){
for (int j=0; j < BoardSize; j++){
Board[i][j] = '-';
cout << Board[i][j] << " ";
}
}
}
这是打印板函数,当称为它时,它简单地打印了gibberish。我怀疑这是因为董事会在createboard()函数结束后恢复到了以前的状态。
void Board::PrintBoard(){
//Prints out the array board
for(int i=0;i < BoardSize;i++){
for(int j=0;j < BoardSize;j++){
cout << Board[i][j];
}
}
}
我是C 和课程的新手,并且不太了解指针等。如何在功能之间使董事会更新和保持这种方式?任何反馈都将不胜感激,谢谢!
内部
void Board::CreateBoard()
您已经声明了用-
填充的局部变量char Board[BoardSize][BoardSize]
。
但是在你的
void Board::PrintBoard()
我认为您正在调用班级定义的char Board[MAX_SIZE][MAX_SIZE]
。
因此,您正在设置一个本地变量并打印未设置的类变量,因此怪异的输出。
相关文章:
- Mongodb c++驱动程序:如何查询元素的数组
- C++,系统无法执行指定的程序
- 在C++程序中输入的文本文件将不起作用,除非文本被复制和粘贴
- 在VS代码中交叉编译Windows与Linux上的MinGW的SDL程序
- C++ Windows 驱动程序MSB3030无法复制该文件,因为它找不到
- 重载操作程序时出错>>用于类中的字符串 memebr
- 获取日期异步信号安全吗?如果在信号处理程序中使用,它会导致死锁吗
- 试图在visual studio上用C++创建一个桌面应用程序
- 模板元程序查找相似的连续类型名称
- FFmpeg:制作一个应用程序比直接使用ffmepg更好吗
- 如何通过cpp程序运行shell脚本
- 有没有什么方法可以使用一个函数中定义的常量变量,也可以由c++中同一程序中的其他函数使用
- C++击球平均值程序使用输入/输出文件打印名称,平均值,最高/最低平均值时遇到麻烦
- 我在这个程序上遇到了麻烦.只有1个编译错误
- C++处理文件,在制作程序时遇到麻烦
- 类C 反向程序的麻烦
- 双重输入valtaton A C 程序的麻烦
- 编译phash程序时遇到麻烦
- 在将字符串转换为int数组时,在putty上运行程序会遇到麻烦
- 在我的c++应用程序中包含第三方代码时遇到麻烦