Qt C++ bridge模式(桥)
来源:互联网 发布:荷塘月色淘宝 编辑:程序博客网 时间:2024/06/06 07:06
Bridge模式使得抽象和实现能够相对独立。
bridge.h
#pragma once
#include <QDebug>
class CImplementor
{
public:
virtual void operateImp() = 0;
};
class CRectImplementor : public CImplementor
{
public:
CRectImplementor(){}
void operateImp()
{
qDebug() << "this is a Rect";
}
};
class CEllipseImplementor : public CImplementor
{
public:
CEllipseImplementor(){}
void operateImp()
{
qDebug() << "this is a ellipse";
}
};
class CAbstractExecute
{
public:
virtual void operate() = 0;
virtual void setImp(CImplementor *imp) = 0;
};
class CExecute : public CAbstractExecute
{
public:
CExecute(CImplementor *imp):_imp(imp){};
void operate();
void setImp(CImplementor *imp)
{
_imp = imp;
}
private:
CImplementor *_imp;
};
bridge.cpp
#include "bridge.h"
void CExecute::operate()
{
if (_imp)
_imp->operateImp();
}
main.cpp
#include <QApplication>
#include "bridge.h"
int main(int argc,char **argv)
{
QApplication app(argc,argv);
CImplementor* rect_imp = new CRectImplementor;
CImplementor* ellipse_imp = new CEllipseImplementor;
CAbstractExecute* exe = new CExecute(rect_imp);
exe->operate();
exe->setImp(ellipse_imp);
exe->operate();
delete exe;
delete ellipse_imp;
delete rect_imp;
return app.exec();
}
- Qt C++ bridge模式(桥)
- Bridge(桥)模式
- 桥接模式(Bridge)
- 桥模式(bridge pattern)
- 桥接模式(Bridge)
- Bridge(桥接模式)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥模式(Bridge Pattern)
- 桥接模式(Bridge)
- Bridge(桥接模式)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- 桥接模式(Bridge)
- jquery 事件 trigger
- EditText 区别输入中文还是英文
- 黑马程序员——java面试题之交通等管理系统
- Vtiger Dashboard翻译问题
- 心情特烦
- Qt C++ bridge模式(桥)
- jquery 轮询图片
- 第十三堂作业
- 学习笔记-java内存分析
- ip138
- OpenStack Ceilometer
- 黑马程序员-交通灯管理系统
- 获取进程token(令牌)和sd(安全描述符)
- Java 字符串和日期之间的相互转化