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

湖州百度网站建设网站建设创意文案

湖州百度网站建设,网站建设创意文案,网站建设资源分享,详情页模板 套用C++访问者模式 一、模式痛点:当if-else成为维护噩梦 开发动物园管理系统,最初的需求很简单: class Animal {}; class Cat : public Animal {}; class Dog : public Animal {};// 处理动物叫声 void makeSound(Animal* a) {if (auto c = dynamic_cast<Cat*>(a)) {st…

C++访问者模式

一、模式痛点:当if-else成为维护噩梦

开发动物园管理系统,最初的需求很简单:

class Animal {};
class Cat : public Animal {};
class Dog : public Animal {};// 处理动物叫声
void makeSound(Animal* a) {if (auto c = dynamic_cast<Cat*>(a)) {std::cout << "Meow!\n";} else if (auto d = dynamic_cast<Dog*>(a)) {std::cout << "Woof!\n";}
}

当新增喂养功能时,代码迅速腐化:

void feedAnimal(Animal* a) {if (auto c = dynamic_cast<Cat*>(a)) {std::cout << "Give fish\n";} else if (auto d = dynamic_cast<Dog*>(a)) {std::cout << "Give bone\n";}
}

系统痛点

  • 每新增功能就要修改所有类型判断逻辑
  • 类型检查与业务逻辑高度耦合
  • 违反开放封闭原则(OCP)

二、模式实现:双分派的艺术

2.1 类图精髓

http://www.dtcms.com/wzjs/827689.html

相关文章:

  • 一般小型教育网站的建设和开发茶叶商城网站建设
  • 做网站公司 郑州龙之向导全球贸易
  • 怎样做好网站运营北京物流网站建设
  • 网站开发设计总结及心得体会外包 网站开发公司
  • 可以转app的网站怎么做昆明城乡建设局网站
  • 南宁网站建设seo基于django的电子商务网站开发
  • php网站建设带数据库模板wordpress分类目录进不去
  • 学习网站导航如何优化公司网站
  • 怎么在传奇网站上做宣传高端网站价格
  • 西安城乡住房建设厅网站网站制作大概费用
  • 邢台集团网站建设价格南通小程序制作
  • 网站做推广要备案吗国外photoshop素材网站
  • 电子商务网站建设含义安徽网站推广
  • 电子商务网站免费模板php c2c网站开发的 书
  • 巴中微小网站建设案例jsp网站空间网站开发
  • 可以做cps合作的棋牌网站6心馨人生网站建设设计
  • 西安有哪些做网站建设的公司怎样做一个微信公众号
  • 泰兴建设局网站网络营销导向型企业网站建设特征
  • 做网站三网多少钱ui设计发展前景及未来
  • 怎么自己做砍价网站国外手机网站欣赏
  • 天津网站建设业务郑州做网站便宜
  • 遵义做网站公司信息技术的网站建设是什么
  • 汕头网站建设优化南京历史文化网页设计
  • 海口网站制作公司企业培训师资格证报考2022
  • 做网站怎么字体全部变粗了推广软件有哪些
  • 我想克隆个网站 怎么做新建网站如何调试
  • 有些电影网站是怎么做的网站设计时间
  • 做外贸的网站如何选择服务器网站设计公司网站制作费用
  • 机械制造设备类企业网站织梦模板网站备案号 放网站
  • 河北邢台做wap网站瑞安机械网站建设