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

外管局网站上做预收登记惠州网站推广排名

外管局网站上做预收登记,惠州网站推广排名,哈尔滨网络公司排行,超频三网站谁家做的对象的继承关系是在编译时就定义好了,所以无法在运行时改变从父类继承的实现。子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问题&…

对象的继承关系是在编译时就定义好了,所以无法在运行时改变从父类继承的实现。子类的实现与它的父类有非常紧密的依赖关系,以至于父类实现中的任何变化必然会导致子类发生变化。当你需要复用子类时,如果继承下来的实现不适合解决新的问题,则父类必须重写或被其他更适合的类替换。这种依赖顾关系限制了灵活性并最终限制了复用性[DP]。
合成/聚合复用原则(CARP),尽量使用合成/集合,尽量不要使用类继承。

**桥接模式(Bridge):**将抽象部分与它的实现部分分离,使它们都可以独立地变化。
在这里插入图片描述
AbstractionImp.h

#ifndef ABSTRACTIONIMP_H
#define ABSTRACTIONIMP_Hclass AbstractionImp {
public:virtual ~AbstractionImp() = default;virtual void Operation();AbstractionImp() = default;
};class ConcretetAbstractionImpA : public AbstractionImp {
public:ConcretetAbstractionImpA() = default;~ConcretetAbstractionImpA() override = default;void Operation() override;
};class ConcretetAbstractionImpB : public AbstractionImp {
public:ConcretetAbstractionImpB() = default;~ConcretetAbstractionImpB() override = default;void Operation() override;
};#endif //ABSTRACTIONIMP_H

AbstractionImp.cpp

#include <iostream>
#include "AbstractionImp.h"using namespace std;void AbstractionImp::Operation() {cout << "AbstractionImp....imp..." << endl;
}void ConcretetAbstractionImpA::Operation() {cout << "ConcreteAbstractionImpA...." << endl;
}void ConcretetAbstractionImpB::Operation() {cout << "ConcreteAbstractionImpB...." << endl;
}

Abstraction.h

#ifndef ABSTRACTION_H
#define ABSTRACTION_H#include "AbstractionImp.h"class Abstraction {
public:virtual ~Abstraction();virtual void Operation() = 0;
protected:Abstraction();
};class RefinedAbstraction : public Abstraction {
public:explicit RefinedAbstraction(AbstractionImp *imp);~RefinedAbstraction() override;void Operation() override;
protected:AbstractionImp *_imp;
};
#endif //ABSTRACTION_H

Abstraction.cpp

#include "abstraction.h"Abstraction::~Abstraction() = default;Abstraction::Abstraction() = default;RefinedAbstraction::RefinedAbstraction(AbstractionImp *imp) {_imp = imp;
}RefinedAbstraction::~RefinedAbstraction() = default;void RefinedAbstraction::Operation() {_imp->Operation();
}

main.cpp

#include <iostream>
#include "Abstraction.h"
#include "AbstractionImp.h"using namespace std;int main() {AbstractionImp *imp = new ConcretetAbstractionImpA();Abstraction *abs = new RefinedAbstraction(imp);abs->Operation();return 0;
}
http://www.15wanjia.com/news/43448.html

相关文章:

  • 做花生的网站搜索引擎优化的核心本质
  • 怎么上传网站iis海外网站推广的公司
  • 外贸网站一站式服务杭州seo网站建设靠谱
  • 现在网站开发和软件开发环球贸易网
  • 做公司的网站石家庄seo网络优化的公司
  • 如何看网站的流量成人培训班有哪些课程
  • 做js题目的网站百度快速排名 搜
  • 网站后台登陆验证码不对无锡网站建设seo
  • 沈阳做网站黑酷科技北京竞价托管代运营
  • 免费的企业网站cms百度公司官网
  • 网站开发开源的手册网址提交百度收录
  • ps上做网站百度推广开户渠道公司
  • 做网站会用到的代码单词西安seo优化系统
  • 可信网站值得做吗公司网站设计
  • 邯郸网站建设公司网上营销推广
  • 广州建设网站开发数据分析师报考官网
  • 如何给wordpress添加网站图标网址链接查询
  • 做情趣网站需要什么资质关键词排名的排名优化
  • 工商局网站怎么做增项青岛网站建设公司哪家好
  • 苏州网站推广公司域名注册入口
  • 静态网站论文目录企业微信会话存档
  • app设计理念范文外贸seo优化
  • 做一个网站难不难青岛seo网站关键词优化
  • 网站做支付要多少钱百度上做优化一年多少钱
  • 跨境电商网站开发技术全国疫情最新消息今天实时
  • app商城需要手机网站吗百度首页广告多少钱
  • 网络营销导向的企业网站建设的要求他达那非片能延时多久
  • 包头怎样做网站如何在互联网上做推广
  • 三合一网站系统运城seo
  • php开发微网站开发seo收费还是免费