设计模式——外观模式(C++实现)
2024-10-10 19:00:38
#include <string>
#include <iostream> using namespace std; class STSystemA
{
public:
void OperationA()
{
cout<< "System A Operation....."<< endl;
}
}; class STSystemB
{
public:
void OperationB()
{
cout<< "System B Operation....."<< endl;
}
}; class STSystemC
{
public:
void OperationC()
{
cout<< "System C Operation....."<< endl;
}
}; class STFacade
{
public:
STFacade()
{
m_stSystemA = new STSystemA();
m_stSystemB = new STSystemB();
m_stSystemC = new STSystemC();
} virtual ~STFacade()
{
delete m_stSystemA;
delete m_stSystemB;
delete m_stSystemC;
} void Operation()
{
m_stSystemA->OperationA();
m_stSystemB->OperationB();
m_stSystemC->OperationC();
} STSystemA* m_stSystemA;
STSystemB* m_stSystemB;
STSystemC* m_stSystemC; }; int main(int argc, char* argv[])
{
STFacade* stFacade = new STFacade();
stFacade->Operation(); delete stFacade; return ;
}
/////////////////////////////////////
[root@ ~/learn_code/design_pattern/11_facade]$ ./facade
System A Operation.....
System B Operation.....
System C Operation.....
最新文章
- Android 笔记 day2 拨号器
- 公用表表达式(CTE)引发的改变执行顺序同WHERE条件顺序引发的bug
- R 语言实现牛顿下降法
- js冒泡事件的特例toggle无法实现阻止冒泡——slideDown()和slideUp()
- 虚拟光驱 DAEMON Tools Lite ——安装与入门
- git与svn的区别-小结一下
- javascript日用代码集合(一)
- 趣味理解ADO.NET对象模型
- [Linux Kernel]查看CentOS版本方法
- Java并发编程总结4——ConcurrentHashMap在jdk1.8中的改进(转)
- 【原创】构建高性能ASP.NET站点之二 优化HTTP请求(前端)
- python + selenium <;四>;
- uoj#73 【WC2015】未来程序
- 第一个Web应用
- 【XSY2925】cti 网络流
- 提高你的python:解释 yield 和 Generators(生成器)
- U-net网络实现医学图像分割以及遥感图像分割源代码
- day04 list tuple
- JAVA后端生成Token(令牌),用于校验客户端,防止重复提交
- Python3各种进制之间的转换方法