模板模式

模板模式

C++ 方式:

Game.h

#include

class Game

{

protected:

virtual void initialize() = 0;

virtual void startPlay() = 0;

virtual void endPlay() = 0;

public:

virtual void play() {

initialize();

startPlay();

endPlay();

}

};

Cricket.h

#include "Game.h"

class Cricket :

public Game

{

protected:

virtual void initialize() {

std::cout << "Cricket Game Finished!" << std::endl;

}

virtual void startPlay() {

std::cout << "Cricket Game Initialized! Start playing." << std::endl;

}

virtual void endPlay() {

std::cout << "Cricket Game Started. Enjoy the game!" << std::endl;

}

};

Football.h

#include "Game.h"

class Football :

public Game

{

protected:

virtual void initialize() {

std::cout << "Football Game Finished!" << std::endl;

}

virtual void startPlay() {

std::cout << "Football Game Initialized! Start playing." << std::endl;

}

virtual void endPlay() {

std::cout << "Football Game Started. Enjoy the game!" << std::endl;

}

};

Main.cpp

#include

#include "Cricket.h"

#include "Football.h"

int main(int argc, char* argv[]) {

Game *game = new Cricket();

game->play();

std::cout << std::endl;

game = new Football();

game->play();

}chpeagle chpeagle

chp***le@126.com

5年前 (2020-08-17)

相关推荐

网吧的电脑为什么速度那么快?原来秘密在这里!
监控sh365下载

网吧的电脑为什么速度那么快?原来秘密在这里!

📅 07-12 👁️ 2871
驾驶模拟游戏排行榜前十名推荐 2025必玩的十大驾驶游戏大全
微信实时对讲在哪打开(微信群实时对讲怎么退出)
监控sh365下载

微信实时对讲在哪打开(微信群实时对讲怎么退出)

📅 07-25 👁️ 3883
广州最大的AJ旗舰店终于开业!就在北京路!
监控sh365下载

广州最大的AJ旗舰店终于开业!就在北京路!

📅 08-03 👁️ 4161
女人的精华液图片欣赏:详解女人的精华液是什么啊及成分
2018世界杯四大养眼女球迷排行榜,中国红衣女孩人气力压J罗妹妹
值得跑友珍藏正确的跑步呼吸方法,看这里
beat365唯一官网

值得跑友珍藏正确的跑步呼吸方法,看这里

📅 07-19 👁️ 9032
淘客如何开通/创建淘礼金?淘礼金案例分享
beat365唯一官网

淘客如何开通/创建淘礼金?淘礼金案例分享

📅 07-14 👁️ 177
欧米伽小队皮肤价格探讨:是否绝版?消息与预测至2025年