没有合适的资源?快使用搜索试试~ 我知道了~
首页C++面向对象实现五子棋小游戏
资源详情
资源评论
资源推荐

C++面向对象实现五子棋小游戏面向对象实现五子棋小游戏
本文介绍了如何运用面向对象思想进行五子棋游戏的设计与开发,与面向过程程序设计比较,面向对象程序设计
更易于实现对现实世界的描述,提高软件的扩展性和可维护性。附上最终的程序源码,推荐给大家,有需要的小
伙伴可以参考下。
尽量将面向对象的思想融入进程序中
ChessBoard.h
//ChessBoard.h
#pragma once
#define ROW 15
#define COL 15
#include<iostream>
using namespace std;
class ChessBoard//棋盘类
{
public:
char m_cSquare[ROW][COL];
public:
ChessBoard();
void show();
};
ChessBoard.cpp
//ChessBoard.cpp
#include"ChessBoard.h"
ChessBoard::ChessBoard()
{
for(int i=1;i<ROW-1;i++)
for(int j=1;j<COL-1;j++)
m_cSquare[i][j]=' ';
for(int j=0;j<COL;j++)
m_cSquare[0][j]=m_cSquare[ROW-1][j]='-';
for(int i=1;i<ROW;i++)
m_cSquare[i][0]=m_cSquare[i][COL-1]='|';
}
void ChessBoard::show()
{
system("cls");
for(int i=0;i<ROW;i++)
{ for(int j=0;j<COL;j++)
cout<<m_cSquare[i][j]<<' ';//这里的“ <<' ' ”很重要,这样才能使屏幕上ROW*COL输出为方形
cout<<endl;
}
}
Player.h
//Player.h
#pragma once
//宏定义四种检测五子是否连成线的方向
#define HORIZON 0
#define VERTICAL 1
#define LEFTBOTTOMTORIGHTTOP 2
#define LEFTTOPTORIGHTBOTTOM 3
#include"ChessBoard.h"
#include<iostream>
using namespace std;
#include<string>
class Player
{
private:
string m_name;
char m_chessType;
int m_x;
int m_y;
ChessBoard* m_ptBoard;
public:
Player(string name,char chessType):m_name(name),m_chessType(chessType),m_ptBoard(NULL){}
void attachToBoard(ChessBoard* ptBoard){m_ptBoard=ptBoard;}














安全验证
文档复制为VIP权益,开通VIP直接复制

评论1