例子:手機玩遊戲,遊戲不斷新增,手機也會不斷增加,手機需要安裝遊戲並玩遊戲。
#include
"iostream"
#include
"string"
using
namespace std;
//實現類
class
game
virtual
void
playgame()
=0;}
;//具體實現類 遊戲a
class
gamea
:public game
void
playgame()
};//具體實現類 遊戲b
class
gameb
:public game
void
playgame()
};
//抽象類 手機類
class
phone
virtual
void
setupgame
(game *pgame)=0
;//安裝遊戲
virtual
void
playgame()
=0;//玩遊戲};
//抽象擴充套件類 手機a
class
phonea
:public phone
void
setupgame
(game *pgame)
void
playgame()
public
: game * m_pgame;};
//抽象擴充套件類 手機b
class
phoneb
:public phone
void
setupgame
(game *pgame)
void
playgame()
public
: game * m_pgame;
};
int
main()
執行結果:
玩遊戲a
玩遊戲b
玩遊戲b
請按任意鍵繼續.
..
設計模式 設計模式 橋接模式
橋接模式 多維 如車行駛在路上。車分各種品牌 各種型號各種排氣 道路分街道 告訴 山地等 駕駛員分男女 為了減少類的數量。如果按照繼承實現會照成大量冗餘的類,類的數量會相當之大 package com.cn.duduyu.bridgepattern.car public abstract class...
設計模式 橋接模式
設計模式 橋接模式 橋接模式 bridge pattern 對應英文名稱可以是bridge或者bradge任意一種都可以。在軟體系統中,某些型別由於自身的邏輯,它具有兩個或多個維度的變化,那麼如何應對這種 多維度的變化 如何利用物件導向的技術來使得該型別能夠輕鬆的沿著多個方向進行變化,而又不引入額外...
設計模式 橋接模式
橋接模式 用來解決多維度變化問題,一般適用於解決乙個物件有多個屬性同時變化,通過橋接的方式使多種屬性變化解耦,場景 1.畫筆 大小有大中小三種,每種對應5種不同的顏色 這裡的變化屬性為大小 顏色 詳解 抽象類 abstraction 定義抽象類的介面,維護乙個指向implementor型別物件的指標...