设计模式_外观模式

外观模式

外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。

#ifndef _FACADE_H_
#define _FACADE_H_
#include<iostream>

//子系统1
class subSystemOne
{
public:
    void subMethoredOne()
    {
        std::cout<< "subsystem one" << std::endl;
    }
};

//子系统2
class subSystemTwo
{
public:
    void subMethoredTwo()
    {
        std::cout<< "subsystem two" << std::endl;
    }          
};

//子系统3
class subSystemThree
{
public:
    void subMethoredThree()
    {
        std::cout<< "subsystem three" << std::endl;
    }
};

//外观,对外提供简单的接口
class facade
{
public:
    facade()
    {
        sub1 = new subSystemOne();
        sub2 = new subSystemTwo();
        sub3 = new subSystemThree();
    }

    //组合子系统,对外提供的功能A
    void methoredA()
    {
        sub1->subMethoredOne();
        sub2->subMethoredTwo();
    }

    //组合子系统,对外提供的功能B
    void methoredB()
    {
        sub1->subMethoredOne();
        sub3->subMethoredThree();
    }

private:
    subSystemOne * sub1;
    subSystemTwo * sub2;
    subSystemThree * sub3;
};

#endif

int main()
{
    facade * face = new facade();
    face->methoredA();
    face->methoredB();
    return 0;
}


  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值