聲東擊西之bridge篇
時間:2024-10-20 來源: 作者: 我要糾錯
<p style=line-height: 150%>接上回:<p style=line-height: 150%><A >http://www.csdn***/develop/read_article.asp?id=11224</A><p style=line-height: 150%>訓練時公布給外界的是一套,而
正式比賽時是另外一套,所謂是
聲東擊西,可以運用bridge模式。
好處是訓練和比賽分離,提高各自
的可擴充性,而且實現細節對客戶
(外界)透明:)
代碼如下:
class 訓練球隊{
public:
訓練球隊();
virtual void 加強左路進攻();
virtual void 加強右路進攻();
protected:
比賽球隊* 得到比賽球隊();
private:
比賽球隊* _實現;
};<p style=line-height: 150%>class 比賽球隊{
public:
virtual void 加強左路進攻();
virtual void 加強右路進攻();
protected:
比賽球隊();
};<p style=line-height: 150%>class 擴展訓練球隊:public 訓練球隊{
public:
//...
virtual void 佯攻左路,實攻右路();
private:
const char* _右路隊員號碼;
};<p style=line-height: 150%>class 擴展比賽球隊:public 比賽球隊{
public:
擴展比賽球隊();
virtual void 佯攻右路,實攻左路();
//...
private:
const char* _左路隊員號碼;
};
標簽: