最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

C++設計模式之外觀模式(Facade)

 更新時間:2018年03月28日 10:40:33   作者:chencarl  
這篇文章主要為大家詳細介紹了C++設計模式之外觀模式(Facade),具有一定的參考價值,感興趣的小伙伴們可以參考一下

外觀模式應該是程序員最下意識用的一種模式,比如我們習慣性的對復雜系統(tǒng)做一個封裝接口。外觀模式其本質是對一堆復雜對象和應用的接口抽象,對它們進行封裝隔離,對于調用者來說只需要關系接口的實現(xiàn),而不需要知道內部有哪些對象和調用。

作用

為模塊的一組接口提供一致的界面,定義了一個高層接口,這個接口使得這一模塊更加容易使用。

類視圖

實現(xiàn)

//復雜或多對象
class objectOne
{
  public void operator() 
  {
    cout<<"operator one\n";
  }
}
class objectTwo
{
  public void operator() 
  {
    cout<<"operator two\n";
  }
}
class objectThree
{
  public void operator() 
  {
    cout<<"operator three\n";
  }
}
class objectFour
{
  public void operator() 
  {
    cout<<"operator four\n";
  }
}
//外觀實現(xiàn)
class Facade
{
  objectOne one;
  objectTwo two;
  objectThree three;
  objectFour four;

  public Facade() 
  {
    obj1 = new objectOne();
    obj2 = new objectTwo();
    obj3 = new objectThree();
    obj4 = new objectFour();
  }
  public void MethodA() 
  {
    cout<<" Fun A()-----\n");
    obj1.operator();
    obj2.operator();
    obj3.operator();
    obj4.operator();
  }
  public void MethodB() 
  {
    cout<<" Fun B()-----\n");
    obj4.operator();
    obj3.operator();
    obj2.operator();
    obj1.operator();
  }
}
//調用
void main() 
{
  Facade facade = new Facade();
  facade.MethodA();
  facade.MethodB();
}


應用場景

  • 構建上下層次的模塊時,如果上下進行調用,則會出現(xiàn)強耦合,用外觀模式實現(xiàn)上下級模塊的接口,簡化相互調用的交叉,降低上下層的耦合度;
  • 在多個復雜模塊相互協(xié)作工作時,向上用外觀類提煉出高層接口,對外隱藏其內部的實現(xiàn)并隔離變化;
  • 對單獨模塊或者對復雜模塊的封裝,提煉出外觀類進行封裝訪問,解耦合。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解c++ 靜態(tài)成員變量

    詳解c++ 靜態(tài)成員變量

    這篇文章主要介紹了c++ 靜態(tài)成員變量的相關資料,幫助大家更好的理解和學習c++,感興趣的朋友可以了解下
    2020-09-09
  • C語言實現(xiàn)拼圖游戲

    C語言實現(xiàn)拼圖游戲

    這篇文章主要為大家詳細介紹了C語言實現(xiàn)拼圖游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-03-03
  • C++實現(xiàn)希爾排序算法實例

    C++實現(xiàn)希爾排序算法實例

    大家好,本篇文章主要講的是C++實現(xiàn)希爾排序算法實例,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下,方便下次瀏覽
    2022-01-01
  • C++實現(xiàn)分水嶺算法(Watershed Algorithm)

    C++實現(xiàn)分水嶺算法(Watershed Algorithm)

    這篇文章主要為大家詳細介紹了C++實現(xiàn)分水嶺算法Watershed Algorithm,具有一定的參考價值,感興趣的小伙伴們可以參考一 下
    2018-01-01
  • VS2019創(chuàng)建c++動態(tài)鏈接庫dll與調用方法實踐

    VS2019創(chuàng)建c++動態(tài)鏈接庫dll與調用方法實踐

    動態(tài)鏈接庫是一個包含可由多個程序同時使用的代碼和數(shù)據(jù)的庫,本文主要介紹了VS2019創(chuàng)建c++動態(tài)鏈接庫dll與調用方法,具有一定的參考價值,感興趣的可以了解一下
    2024-06-06
  • 基于make命令與makefile文件詳解

    基于make命令與makefile文件詳解

    下面小編就為大家分享一篇基于make命令與makefile文件詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-01-01
  • C語言 文件操作解析詳解及實例代碼

    C語言 文件操作解析詳解及實例代碼

    這篇文章主要介紹了C語言 文件操作解析詳解及實例代碼的相關資料,需要的朋友可以參考下
    2016-11-11
  • 詳解C++編程中的析構函數(shù)

    詳解C++編程中的析構函數(shù)

    這篇文章主要介紹了C++編程中的析構函數(shù),是C++入門學習中的基礎知識,需要的朋友可以參考下
    2015-09-09
  • C++ LeetCode1812判斷國際象棋棋盤格子顏色

    C++ LeetCode1812判斷國際象棋棋盤格子顏色

    這篇文章主要為大家介紹了C++ LeetCode1812判斷國際象棋棋盤格子顏色, 有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-12-12
  • 詳解C++中的萬能頭文件

    詳解C++中的萬能頭文件

    C++萬能頭文件它是一個包含了每一個標準庫的頭文件,接下來通過本文給大家介紹C++中的萬能頭文件及優(yōu)缺點,需要的朋友可以參考下
    2023-02-02

最新評論

西林县| 湾仔区| 凤山县| 石楼县| 通许县| 宝应县| 金华市| 马鞍山市| 蕲春县| 铜梁县| 科技| 乡宁县| 沁水县| 望奎县| 昌图县| 新田县| 湖北省| 临桂县| 吉林市| 成安县| 离岛区| 普格县| 诏安县| 宣汉县| 兰考县| 安顺市| 剑阁县| 沙田区| 离岛区| 颍上县| 荔波县| 扎兰屯市| 迁安市| 天津市| 富民县| 惠水县| 永川市| 玉林市| 岗巴县| 洱源县| 芒康县|