本篇内容介绍了“C++设计模式之外观模式怎么实现”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!
外观模式应该是程序员最下意识用的一种模式,比如我们习惯性的对复杂系统做一个封装接口。外观模式其本质是对一堆复杂对象和应用的接口抽象,对它们进行封装隔离,对于调用者来说只需要关系接口的实现,而不需要知道内部有哪些对象和调用。
作用
为模块的一组接口提供一致的界面,定义了一个高层接口,这个接口使得这一模块更加容易使用。
类视图
实现
//复杂或多对象classobjectOne{publicvoidoperator(){cout<<"operatorone\n";}}classobjectTwo{publicvoidoperator(){cout<<"operatortwo\n";}}classobjectThree{publicvoidoperator(){cout<<"operatorthree\n";}}classobjectFour{publicvoidoperator(){cout<<"operatorfour\n";}}//外观实现classFacade{objectOneone;objectTwotwo;objectThreethree;objectFourfour;publicFacade(){obj1=newobjectOne();obj2=newobjectTwo();obj3=newobjectThree();obj4=newobjectFour();}publicvoidMethodA(){cout<<"FunA()-----\n");obj1.operator();obj2.operator();obj3.operator();obj4.operator();}publicvoidMethodB(){cout<<"FunB()-----\n");obj4.operator();obj3.operator();obj2.operator();obj1.operator();}}//调用voidmain(){Facadefacade=newFacade();facade.MethodA();facade.MethodB();}
应用场景
构建上下层次的模块时,如果上下进行调用,则会出现强耦合,用外观模式实现上下级模块的接口,简化相互调用的交叉,降低上下层的耦合度;
在多个复杂模块相互协作工作时,向上用外观类提炼出高层接口,对外隐藏其内部的实现并隔离变化;
对单独模块或者对复杂模块的封装,提炼出外观类进行封装访问,解耦合。
“C++设计模式之外观模式怎么实现”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注恰卡编程网网站,小编将为大家输出更多高质量的实用文章!
C++之list容器模拟怎么实现
C++深浅拷贝及简易string类怎么实现
C++之list容器如何使用
C++内存对齐如何实现
C++内存对齐如何实现本篇内容介绍了“C++内存对齐如何实现”的有...
C/C++如何获取CAN信号
C/C++程序链接与反汇编工具objdump如何使用
C++聚合体初始化的方法是什么
C++聚合体初始化的方法是什么本篇内容介绍了“C++聚合体初始化的...
C++引用如何使用
C++类和对象之封装及class与struct的区别是什么
C++怎么实现softmax函数
用户名
密码
记住登录状态 忘记密码?
邮箱
确认密码
我已阅读并同意 用户协议