当前位置: 首页 > news >正文

基础微网站开发代理织梦网站背景音乐

基础微网站开发代理,织梦网站背景音乐,网站及移动端建设情况,电商零基础从哪儿开始学策略模式 序言理解源码 序言 还是参考的菜鸟教程,会C的还是看C的方式来得舒服。 . 理解 使用符合UML规范的便于理解和回忆,接口其实就是普通的基类 . 源码 strategy.h /// 策略 class Strategy { public:virtual ~Strategy();/*** brief 计算* p…

策略模式

  • 序言
  • 理解
  • 源码

序言

还是参考的菜鸟教程,会C++的还是看C++的方式来得舒服。

.

理解

使用符合UML规范的便于理解和回忆,接口其实就是普通的基类
策略模式
.

源码

strategy.h

/// 策略
class Strategy
{
public:virtual ~Strategy();/*** @brief 计算* @param num1 计算数值* @param num2 被计算数值* @return */virtual int operation(const int& num1, const int& num2) = 0;
};/// 加策略
class AddOperation : public Strategy
{
public:/*** @brief 加计算* @param num1 计算数值* @param num2 被计算数值* @return */int operation(const int &num1, const int &num2) override;
};/// 减策略
class SubtractOperation : public Strategy
{
public:/*** @brief 减计算* @param num1 计算数值* @param num2 被计算数值* @return */int operation(const int &num1, const int &num2) override;
};/// 上下文
class Context
{
public:/*** @brief 构造一个策略的上下文* @param strategy 策略对象*/explicit Context(Strategy *strategy);~Context();/*** @brief 计算* @param num1 计算数值* @param num2 被计算数值* @return */int operation(const int &num1, const int &num2);private:/// 所拥有的策略Strategy *strategy = nullptr;
};

.
strategy.cpp

Strategy::~Strategy()
{}int AddOperation::operation(const int &num1, const int &num2)
{return num1 + num2;
}int SubtractOperation::operation(const int &num1, const int &num2)
{return num1 - num2;
}Context::Context(Strategy *strategy): strategy(strategy)
{}Context::~Context()
{if (strategy)delete strategy;
}int Context::operation(const int &num1, const int &num2)
{if (strategy){return strategy->operation(num1, num2);}return INT_MIN;
}

.
使用的地方

std::shared_ptr< Context > context(new Context(new AddOperation));
std::cout << context->operation(10, 5) << std::endl;context.reset(new Context(new SubtractOperation));
std::cout << context->operation(10, 5) << std::endl;

不同策略则生成不同的对象给Context,Context会根据其拥有的策略进行运算。

http://www.yayakq.cn/news/513886/

相关文章:

  • 网站被k怎么查平台流量排名
  • 做一家电商网站需要多少钱健康呼伦贝尔二维码高清
  • 自建网站成都校园网络工程设计方案
  • 新建设电影院 网站公众号开发网站建设合同
  • 手机电脑网站建设短视频石家庄369招聘信息网
  • 杭州营销型网站做外国美食的视频网站
  • 成都私人视频网站制作平台66代理ip官网
  • 12345东莞网站潞电建设公司官网
  • 商务网站怎么做佛山网站设计联系方式
  • 买完域名后如何建设网站网站建设代理
  • dedecms手机网站更新成都网站开发收费
  • 珠海网站建设方案优化上海做网站那家好
  • 江西营销型网站建设天津网络关键词排名
  • o2o 网站大连服务公司 网站
  • 网站套站什么意思网页制作包括哪些内容
  • 个人网站设计与制作源代码直播间搭建
  • 零基础学网站开发北京城乡建设学校网站
  • 公司网站建设费用会计科目网站开发遇到的问题及解决方法
  • 南昌专业网站建设公司哪家好wordpress需要认证
  • 用asp.net做简易网站系统开发是系统建设中工作任务最为繁重的阶段
  • 个人网站推广手段有哪些wordpress网站模板
  • 东莞网站设计资讯seo技术优化服务
  • 地方门户网站备案徐州软件外包
  • 西安网站开发公司怎么选2021年年度关键词
  • wordpress 商城系统温州百度网站快速优化
  • 制作彩票网站需要多少钱html最简单的代码
  • php做教育网站怎么在招聘网站做评估
  • 建一个营销网站的步骤wordpress分页工具栏
  • 专业商城网站制作广西建设行政主管部门官方网站
  • 个人做网站如何推广厦门网站设计品牌企业