10 大話設計模式C 實現之模板方法模式

2021-10-01 14:17:03 字數 531 閱讀 8099

/*

模板方法模式是實現乙個模板父類,父類實現所有重複的**

讓子類可以修改父類維持的元素或者函式,子類可以利用多型、根據需要重寫父類

*/#include

#include

using namespace std;

typedef string(*pfunc) ();

class templateclass

virtual string answer2()

public:

void testquestion1() 

void testquestion2()

};class *****1 : public templateclass

virtual string answer2()

};class *****2 :public templateclass

virtual string answer2()

void test()

if (p2 != null)

}int main()

八 大話設計模式之模板方法模式

good 把不變的 部分都轉移到父類中,將可變的 用 virtual 留到子類重寫。迪公尺特法則 如果兩個類不直接通訊,那麼這兩個類就不應當發生直接的相互作用。如果乙個類需要呼叫另乙個類的某個方法的話,可以通過第三個類 這個呼叫。在類的結構設計上,每乙個類都應該盡量降低成員的訪問許可權。該法則在後面...

15 大話設計模式C 實現之抽象工廠模式

例項 不同客戶的資料庫管理採用不同的資料庫完成,不同的資料庫在語法上存在差異,因此需要 解除使用者和具體資料庫之間的耦合 即業務邏輯與資料訪問的解耦 避免向不同型別的客戶提供支援時的 復用 include include using namespace std idepartment介面,用於客戶端...

大話設計模式之模板模式 C

學無止境,精益求精 十年河東,十年河西,莫欺少年窮 今天一起 模板模式,如下 以下讓我們來看一下它的準確定義 模板方法 templatemethod 模式 定義乙個操作中的演算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類能夠不改變乙個演算法的結構就可以重定義該演算法的某些特定的步驟。抽象類 ...