/*
通常某一个操作的初始化依赖于很多步骤,我们可以把此步骤进行封装做成一个类
通过这个类的初始化操作中(对依赖的对象进行创建,然后返回创建此类型的指针)
然后在外观类中完成这些函数的调用工作
适用于:
为子系统中统一一套接口,让子系统更加容易使用。
*/
#include <iostream>
using namespace std;
class SystemA
{
public:
void doThing()
{
cout << "systemA do...." << endl;}
};
class SystemB
{
public:
void doThing()
{
cout << "systemA do...." << endl;
}
};
class SystemC
{
public:
void doThing()
{
cout << "systemA do...." << endl;}
};
class Facade //
{
public:
Facade()
{
a = new SystemA;
b = new SystemB;
c = new SystemC;
}
~Facade()
{
delete a;
delete b;
delete c;
}
void doThing()
{
a->doThing();
b->doThing();
c->doThing();
}
protected:
private:
SystemA *a;
SystemB *b;
SystemC *c;
};
void main()
{
Facade *f = new Facade;//创建一个外观对象
f->doThing();//然后调用外观函数中封装的一些列的接口实现函数
delete f;
system("pause");
}
思路来源:传智博客--王保明
转载请注明原文地址: https://ju.6miu.com/read-39111.html