介紹組合模式將多個物件組成樹狀結構(tree),並讓使用者透過單一介面來操作這些組合物件。 C++範例 #include <iostream> #i...
介紹裝飾者模式在物件上動態加入其他行為或職責,提供除了創建子類外的另一種方法。 以下範例是利用裝飾者模式,在義大利pizza上加入大量的鳳梨。 C++範例 #i...
介紹享元模式透過共享物件來減少資源使用。此模式將物件分為內部及外部狀態。內部狀態是固定的,可分享給大家使用,外部狀態則隨外在環境改變,並由外在環境維護。 C++...
介紹代理模式對目標物件提供額外的存取限制。 C++範例 #include <iostream> #include <memory> c...
介紹責任鏈模式為將請求發送至一條由多個物件串成的鏈,請求會逐一被鏈上的物件處理,直到該請求被完成。 C++範例 #include <iostream>...
介紹策略模式將同系列的算法封裝起來,讓使用者可在runtime時替換這些算法。 C++範例 #include <iostream> class S...
介紹狀態模式讓物件的行為隨著內部狀態不同而改變。 C++範例 #include <iostream> #include <string>...
介紹命令模式將請求封裝為物件,透過不同的請求可對客戶進行參數化。 C++範例 #include <iostream> using namespace...
介紹解釋器模式使用已定義語言來解釋傳入的句子。 C++範例 #include <iostream> #include <vector>...
介紹迭代器模式提供順序訪問容器內的元素,而不暴露該容器內部實作。 C++範例 #include <iostream> #include <st...