22 組合模式

2021-09-12 00:00:07 字數 741 閱讀 8234

將物件組合成樹形結構以表示"部分-整體"的層次結構。組合使得使用者對單個物件和組合物件的使用具有一致性。

#include #include #include using namespace std;

// 抽象類: 公司

class company

virtual void add(company* company) {};

virtual void show(int depth) {};

protected:

string m_name;

};// 具體公司

class concretecompany : public company

// 增加子樹

void add(company* company)

void show(int depth)

private:

// 公司列表

listpcompanylist;

};// 具體部分: 財務部

class financedepartment : public company

void show(int depth) };

// 具體部分: 人事部

class hrdepartment : public company

void show(int depth) };

void test_01()

int main()

12 組合模式

1.說明 請參見本文第一章 2.組合模式說明 組合模式 將物件組合成樹形介面以表示 部分 整體 的層次結構。組合模式使得使用者對單個物件和組合物件具有一致性。為了保持整體和區域性的一致性,整體和區域性具有相同的介面,從而避免判斷該節點是整體還是區域性。介面可以實現為空。使用範圍 在需求中體現部分與整...

15 組合模式

定義 將物件組合成樹形結構以表示 部門 整體 的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有一致性。適用 當發現需求中是體現部分與整體層次的結構時,以及你希望使用者可以忽略組合物件與單個物件的不同,同意地適用組合結構中的所有物件時,就應該考慮用組合模式了。asp.net的treevie...

10組合模式

組合模式 設計模式其實很簡單 筆記 定義 將物件組成樹形結構以表示 部分 整體 的層次結構。組合模式使得使用者對單個物件和組合物件的使用具有一致性。理解 樹和子樹,即整體與部分。在樹形結構中,部分和整體有著類似或相同的結構,所以可以將部分和 整體一致對待 樹中分支節點與葉子節點的抽象父類 publi...