⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 c18-创建模式01.txt

📁 C++课件,很好用的,帮助大家学习C++.
💻 TXT
字号:

//迷宫游戏的原始代码

class MapSite
{
public:
	virtual void Enter()=0;
};

class Room:public MapSite
{
public:
	Room(int roomNo);
	MapSite * 	GetSide(int dir) const;
	void 		SetSide(int dir,MapSite *);
	void Enter();
private:
	MapSite	*	_sides[4];
	int		_roomNumber;
};

class Wall:public MapSite
{
public:
	Wall();
	virtual void Enter();
};

class Door: public MapSite
{
public:
	Door(Room * r1=0,Room * r2=0);
	virtual void Enter();
	Room * OtherSideFrom(Room *);
private:
	Room * _room1;
	Room * _room2;
	bool   _isOpen;
};

class Maze
{
public:
	Maze();
	void AddRoom(Room * r);
	Room * RoomNo(int num) const;
private:
	//...
};

class Game
{
public:
	Game();
private:
	Maze * theMaze;
	//...
};

 Game::Game()
{
	Maze * theMaze=new Maze;
	Room * r1=new Room(1);
	Room * r2=new Room(2);
	Door * theDoor=new Door(r1,r2);

	aMaze->AddRoom(r1);
	aMaze->AddRoom(r2);
	
	r1->SetSide(1,new Wall);
	r1->SetSide(2,theDoor);
	r1->SetSide(3,new Wall);
	r1->SetSide(4,new Wall);

	r1->SetSide(1,new Wall);
	r1->SetSide(2,new Wall);
	r1->SetSide(3,new Wall);
	r1->SetSide(4,theDoor);

}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -