【C++23設計模式 】類間的關係在代碼中的體現

【 01 】 依賴關係

   1.1  圖示

     A  - - - - -> B

   1.2 代碼中的體現

    B是A的類中某一方法(成員函數)的返回值或者參數值;

 

【 02 】關聯關係

   2.1 圖示

    A ——>B

   2.2. 代碼中的體現

   B是A類的成員變量。

 

【 03 】聚合 (個體與羣體間的關係,個體離開羣體還可以“活”或者獨立存在)

  3.1 圖示

   

 3.2 代碼中的體現

     如上圖右邊類是左邊類的成員變量(指針變量),且右邊類是左邊類的構造函數的參數;

 

【04】組合 (整體與局部間的關係,局部離開整體不可以“活”或者獨立“生存”/存在)

 暫時確定爲與聚合的代碼表現是一致的(理論是如此的,但未看到比較權威的書對此關係的說明)。

 

由於 在GOF-23中未看組合結構。所以說代碼的表現只能暫時說與聚合是一樣的(理論上基本是如聚合),因爲我查看GOF-23設計模式中,所有的模式中未出現如下圖的關係:

 

ps:組合與聚合進一步的說明

 

 

也有可能是我手上的GOF-23設計模式不準確,我現在未清楚這種關係在代碼中的表現,後面查清楚後再補充。

(如果有哪位閱到此文章,且清楚這種關係在代碼中的體現,請回復我一下,謝謝!)

 

 

 

 

 

    

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章