【22】c++设计模式——>外观模式

外观模式定义

为复杂系统提供一个简化接口,它通过创建一个高层接口(外观),将多个子系统的复杂操作封装起来,以便客户端更容易使用。

简单实现

cpp 复制代码
#include<iostream>

// 子系统类
class SubsystemA {
public:
    void operationA() {
        std::cout << "Subsystem A operation" << std::endl;
    }
};

class SubsystemB {
public:
    void operationB() {
        std::cout << "Subsystem B operation" << std::endl;
    }
};

class SubsystemC {
public:
    void operationC() {
        std::cout << "Subsystem C operation" << std::endl;
    }
};

// 外观类
class Facade {
public:
    void operation() {
        subsystemA.operationA();
        subsystemB.operationB();
        subsystemC.operationC();
    }

private:
    SubsystemA subsystemA;
    SubsystemB subsystemB;
    SubsystemC subsystemC;
};

int main() {
    Facade facade;
    facade.operation();

    return 0;
}
相关推荐
WL学习笔记9 小时前
C & C++ 内存管理
c++·c++内存管理
宛 禾11 小时前
Qt 控件入门:QLabel 从拖拽到对象树,一篇讲透
c++·qt·学习
hetao173383711 小时前
联盟场-提高组-R7 & ZYZSC-S-Round 11
c++·算法
程序喵大人11 小时前
【C++入门】编译链接模型 - 07 链接器怎样把符号对上号
开发语言·c++·编译器·编译链接·链接器
博风11 小时前
8、设计模式应用举例:适配器模式:Iterator接口与Enumeration接口
设计模式·适配器模式
局部有解12 小时前
Hot100 - 三数之和
数据结构·c++·算法
longlongzihan12 小时前
C++ 常用数据结构速查:vector、stack、queue、list、树、图、哈希表等声明与核心操作
数据结构·c++·list
别动我齐刘海12 小时前
实时控制学习2
linux·c++·人工智能·学习·算法
高晶13 小时前
ARM 嵌入式 Linux 系统 U-Boot 开发与移植实战M
设计模式·程序员
hetao173383713 小时前
校内场-提高组 ZYZSC-S-Round 2
c++·算法