zoukankan      html  css  js  c++  java
  • 设计模式复习-外观模式

    为了系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

    #pragma once
    #include "stdafx.h"
    #include<string>
    #include<iostream>
    #include<windows.h>
    using namespace std;
    //外观模式(Facade)
    
    class SubSystemOne {
    public:
    	VOID SubSystemA() {
    		cout << "SubSystem method A" << endl;
    	}
    };
    
    class SubSystemTwo {
    public:
    	VOID SubSystemB() {
    		cout << "SubSystem method B" << endl;
    	}
    };
    
    class SubSystemThree {
    public:
    	VOID SubSystemC() {
    		cout << "SubSystem method C" << endl;
    	}
    };
    
    class Facade {
    private:
    	SubSystemOne * mpSubSystemOne = NULL;
    	SubSystemTwo * mpSubSystemTwo = NULL;
    	SubSystemThree * mpSubSystemThree = NULL;
    
    public:
    	Facade() {
    		mpSubSystemOne = new SubSystemOne();
    		mpSubSystemTwo = new SubSystemTwo();
    		mpSubSystemThree = new SubSystemThree();
    	}
    	VOID FacadeShowA() {
    		mpSubSystemOne->SubSystemA();
    		mpSubSystemThree->SubSystemC();
    	}
    	VOID FacadeShowB() {
    		mpSubSystemTwo->SubSystemB();
    		mpSubSystemThree->SubSystemC();
    	}
    	~Facade() {
    		delete mpSubSystemOne;
    		delete mpSubSystemTwo;
    		delete mpSubSystemThree;
    	}
    };
    
    
    
    int main()
    {
    	Facade *pFacade = new Facade();
    	pFacade->FacadeShowA();
    	pFacade->FacadeShowB();
    	delete pFacade;
    	getchar();
    	return 0;
    }
  • 相关阅读:
    全民医疗
    SpringMVC
    Mybatis 缓存策略
    不要追涨杀跌
    我只认比特币
    ETH反思
    世界是熵增的
    切片最好还是传引用
    rxgo示例
    11月份的计划
  • 原文地址:https://www.cnblogs.com/csnd/p/12061918.html
Copyright © 2011-2022 走看看