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

c++开发模式桥接模式

将抽象部分与它的实现部分分离,使它们都可以独立地变化。它是一种对象结构型模式,又称为柄体(Handle and Body)模式或接口(Interface)模式。

#include <iostream>
using namespace std;// Abstractionclass Abstraction {
public:virtual void Operation() = 0;virtual ~Abstraction() { }
protected:Abstraction() { }
};// AbstractionImpclass AbstractionImp :public Abstraction {
public:virtual void Operation() = 0;virtual ~AbstractionImp() { }
protected:AbstractionImp() { }
};class ConcreteAbstractionImp :public AbstractionImp {
public:void Operation() {cout << "ConcreteAbstractionImp Operation..." << endl;}
};class RefinedAbstraction :public Abstraction {
public:RefinedAbstraction(AbstractionImp *imp) {_imp = imp;}void Operation() {_imp->Operation();}
private:AbstractionImp *_imp;
};int main() {AbstractionImp *imp = new ConcreteAbstractionImp();Abstraction *abs = new RefinedAbstraction(imp);abs->Operation();delete imp;delete abs;return 0;
}
http://www.lryc.cn/news/108925.html

相关文章:

  • javaScript 树形结构 递归查询方法。
  • MySQL语法2
  • Mysql on duplicate key update用法及优缺点
  • 【Linux】-进程概念之进程优先级(如何去进行调度以及进程切换),还不进来看看??
  • 《在细雨中呼喊》阅读笔记
  • 01-1 搭建 pytorch 虚拟环境
  • RocketMQ 事务消息
  • Windows安装ElasticSearch
  • 【深度学习】SMILEtrack: SiMIlarity LEarning for Multiple Object Tracking,论文
  • 【Kubernetes】Kubernetes之二进制部署
  • 京东开源的、高效的企业级表格可视化搭建解决方案:DripTable
  • STL C++学习背景
  • C#踩坑:谨慎在XML数据列上绑定鼠标事件!
  • 逻辑代数运算
  • win10笔记本显示器根据页面显示亮度自动调节亮度的问题
  • 无人驾驶实战-第一课(自动驾驶概述)
  • 15.节点操作
  • C语言自定义类型 — 结构体、位段、枚举、联合
  • 新手指南:流程图中各种图形的含义及用法解析
  • 【知识产权】专利的弊端
  • 用Rust实现23种设计模式之抽象工厂
  • 31.利用linprog 解决 投资问题(matlab程序)
  • 整数线性规划求解工具isl使用方法
  • SystemC的调度器
  • SpringBoot、SpringCloud 版本查看
  • AI Chat 设计模式:12. 享元模式
  • Spring mvc:SpringServletContainerInitializer
  • 微信小程序中的全局数据共享(状态管理)使用介绍
  • LLM - LLama 模型读取报错 TypeError: not a string
  • 2023年08月在线IDE流行度最新排名