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

网站开发培训宿迁做网站多少钱

网站开发培训,宿迁做网站多少钱,做网站生意不赚钱6,网站背景视频是怎么做的本文章属于专栏- 概述 - 《设计模式(极简c版)》-CSDN博客 模式说明 方案: 对每个data建立一个单点解释器对象X,dataA和dataB之间的关系,建立一个关系解释器对象Y,这里的Y处理的是X1和X2。这样,…

        本文章属于专栏- 概述 - 《设计模式(极简c++版)》-CSDN博客


模式说明

  • 方案: 对每个data建立一个单点解释器对象X,dataA和dataB之间的关系,建立一个关系解释器对象Y,这里的Y处理的是X1和X2。这样,复用了解释单文本的逻辑,和多文本间关系的逻辑。
  • 优点:
    • 灵活性:易于改变和扩展文法,增加新的解释器。
    • 易于实现:将文法规则表示为类的层次结构,每个规则由一个解释器表示,易于理解和实现。
  • 缺点:
    • 复杂度:当文法规则复杂时,可能需要大量的解释器类来表示。

本质思想:解释器模式通过将语言的文法表示为类的层次结构,然后建立解释器来解释这些类,从而实现对语言的解释和执行。

实践建议:除了正则表达式,文本相关的解析等特别灵活、规则链复杂的场景。不建议使用,也就是95%以上的业务用不到

代码示例

#include <iostream>
#include <string>
#include <memory>// 抽象表达式类
class Expression {
public:virtual ~Expression() {}virtual bool interpret(const std::string& context) const = 0;
};// 终端表达式类
class TerminalExpression : public Expression {
private:std::string data;public:TerminalExpression(const std::string& data) : data(data) {}bool interpret(const std::string& context) const override {return context.find(data) != std::string::npos;}
};// 非终端表达式类
class OrExpression : public Expression {
private:std::shared_ptr<Expression> expr1;std::shared_ptr<Expression> expr2;public:OrExpression(std::shared_ptr<Expression> expr1, std::shared_ptr<Expression> expr2): expr1(expr1), expr2(expr2) {}bool interpret(const std::string& context) const override {return expr1->interpret(context) || expr2->interpret(context);}
};// 使用示例
int main() {std::shared_ptr<Expression> robert = std::make_shared<TerminalExpression>("Robert");std::shared_ptr<Expression> john = std::make_shared<TerminalExpression>("John");std::shared_ptr<Expression> orExpression = std::make_shared<OrExpression>(robert, john);std::cout << "Is Robert or John present? " << orExpression->interpret("John") << std::endl;// 输出: Is Robert or John present? 1std::cout << "Is Robert or John present? " << orExpression->interpret("Alice") << std::endl;// 输出: Is Robert or John present? 0return 0;
}

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

相关文章:

  • 怎么用vs2008做网站地方门户网站系统建设方案
  • 网站空间不够用心理咨询网站开发
  • 专业企业建站系统广告网站设计公司好吗
  • 0000网站建设企业常用系统各系统介绍
  • 建一个设计网站要多少钱做广个公司网站权重
  • 中山精品网站建设案例网站内搜索功能怎么做
  • 什么网站可以做行测西红门做网站
  • 联通公网ip申请 做网站谷歌网站收录入口
  • 网站访问人数代码网站建设数据处理
  • 电子商务网站如何进行维护和推广网站建设公司擅自关闭客户网络
  • 南山做网站网络整合营销方案策划
  • 广州做网站比较好的公司wordpress下载类插件
  • 做微信充值网站网站seo工具
  • 常州做网站价格网站可以做外部链接吗
  • 爱站关键词挖掘查询工具青岛网站建设企业建站
  • 网站的费用多少合适佛山龙江做网站的
  • 建设信源网站客户管理系统排名
  • 设计网站网站名称网站后台如何管理
  • 网站建设技术简易留言板做脚本的网站
  • 在游戏网站做中介合法wordpress防止被镜像
  • 中小型企业网站建设企业智慧服务区下载
  • 有谁做过网站建设国外设计灵感网站
  • 代理网站地址黑山网站建设
  • 淘宝美工做兼职的网站小说网站建设目的
  • 365房产南京网站网站建设技术咨询协议
  • 网站建设丷金手指专业十五摄影师都在哪些网站发布作品
  • 南宁电子商务网站建设西部数码成品网站
  • wordpress.htmlseo优化排名工具
  • 网站建设实例手机wordpress登陆
  • 做网站公司还有没有活路mysql asp网站