欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++設(shè)計(jì)模式之外觀模式(Facade)

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

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

作用

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

類視圖

實(shí)現(xiàn)

//復(fù)雜或多對(duì)象
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";
  }
}
//外觀實(shí)現(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();
  }
}
//調(diào)用
void main() 
{
  Facade facade = new Facade();
  facade.MethodA();
  facade.MethodB();
}


應(yīng)用場(chǎng)景

  • 構(gòu)建上下層次的模塊時(shí),如果上下進(jìn)行調(diào)用,則會(huì)出現(xiàn)強(qiáng)耦合,用外觀模式實(shí)現(xiàn)上下級(jí)模塊的接口,簡(jiǎn)化相互調(diào)用的交叉,降低上下層的耦合度;
  • 在多個(gè)復(fù)雜模塊相互協(xié)作工作時(shí),向上用外觀類提煉出高層接口,對(duì)外隱藏其內(nèi)部的實(shí)現(xiàn)并隔離變化;
  • 對(duì)單獨(dú)模塊或者對(duì)復(fù)雜模塊的封裝,提煉出外觀類進(jìn)行封裝訪問,解耦合。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • C++實(shí)現(xiàn)推箱子功能附加回撤示例

    C++實(shí)現(xiàn)推箱子功能附加回撤示例

    本文主要介紹了C++實(shí)現(xiàn)推箱子功能附加回撤示例,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10
  • 簡(jiǎn)單聊聊C++中回調(diào)函數(shù)的實(shí)現(xiàn)

    簡(jiǎn)單聊聊C++中回調(diào)函數(shù)的實(shí)現(xiàn)

    回調(diào)函數(shù)就是一個(gè)通過函數(shù)指針調(diào)用的函數(shù),如果你把函數(shù)的指針(地址)作為參數(shù)傳遞給另一個(gè)函數(shù),當(dāng)這個(gè)指針被用來調(diào)用其所指向的函數(shù)時(shí),我們就說這是回調(diào)函數(shù),下面這篇文章主要給大家介紹了關(guān)于C++中回調(diào)函數(shù)實(shí)現(xiàn)的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • Qt QCompleter自動(dòng)補(bǔ)全的實(shí)現(xiàn)

    Qt QCompleter自動(dòng)補(bǔ)全的實(shí)現(xiàn)

    本文主要介紹了Qt QCompleter自動(dòng)補(bǔ)全的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • 淺談C++中thread庫(kù)join和detach的區(qū)別

    淺談C++中thread庫(kù)join和detach的區(qū)別

    這篇文章主要為大家介紹了C++中thread庫(kù)join和detach的區(qū)別,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2021-11-11
  • Qt界面美化之自定義qss樣式表的詳細(xì)步驟

    Qt界面美化之自定義qss樣式表的詳細(xì)步驟

    很多人應(yīng)該和我一樣,想做界面才接觸的Qt,結(jié)果就是做不出來華麗的界面,下面這篇文章主要給大家介紹了關(guān)于Qt界面美化之自定義qss樣式表的詳細(xì)步驟,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-03-03
  • C語(yǔ)言實(shí)現(xiàn)動(dòng)態(tài)鏈表的示例代碼

    C語(yǔ)言實(shí)現(xiàn)動(dòng)態(tài)鏈表的示例代碼

    本文主要介紹了C語(yǔ)言實(shí)現(xiàn)動(dòng)態(tài)鏈表的示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 在vscode中快速新建html文件的2種方法總結(jié)

    在vscode中快速新建html文件的2種方法總結(jié)

    這篇文章主要給大家介紹了關(guān)于在vscode中快速新建html文件的2種方法,以及如何快速打開HTML文件查看編輯效果的方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2022-04-04
  • c++11新特性多線程操作實(shí)戰(zhàn)

    c++11新特性多線程操作實(shí)戰(zhàn)

    這篇文章主要介紹了c++11新特性多線程操作實(shí)戰(zhàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-09-09
  • C/C++表格組件Qt?TableWidget應(yīng)用詳解

    C/C++表格組件Qt?TableWidget應(yīng)用詳解

    本文詳細(xì)講解了C/C++中使用列表框組件Qt?TableWidget的方法,文中通過示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-12-12
  • C語(yǔ)言中scanf與scanf_s函數(shù)的使用詳解

    C語(yǔ)言中scanf與scanf_s函數(shù)的使用詳解

    本文主要介紹了C語(yǔ)言中scanf與scanf_s函數(shù)的使用詳解,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-10-10

最新評(píng)論