国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

足球戰(zhàn)術(shù)之observer及memento篇

2019-11-18 15:24:55
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

   足球戰(zhàn)術(shù)中最重要的應(yīng)該是隊(duì)員的跑動(dòng),而對(duì)于全體隊(duì)員的跑動(dòng)應(yīng)該符合observer模式才對(duì)。因?yàn)樽鳛閟ubject的傳球隊(duì)員不僅僅是要對(duì)被傳球的隊(duì)員發(fā)送消息,而且要改變所有隊(duì)員(observers)的跑動(dòng)方式。廣播的方式應(yīng)該分為兩種情況:推和拉。被傳球的隊(duì)員是接收推的方式,由傳球隊(duì)員的傳球路線直接引導(dǎo)他的跑動(dòng)路線。其他隊(duì)員是接收拉的方式,由視覺接受傳球隊(duì)員的跑動(dòng)及傳球路線繼而決定自己的跑動(dòng)。代碼如下:
  class 無(wú)球隊(duì)員{
  public:
        virtual ~觀察();
        virtual void 跑動(dòng)(傳球隊(duì)員* 傳球路線)=0;
  PRotected:
        觀察();
};

class 傳球隊(duì)員{
public:
     virtual ~傳球消息();

     virtual void 預(yù)備傳球(無(wú)球隊(duì)員*);
     virtual void 繼續(xù)帶球(無(wú)球隊(duì)員*);
     virtual void 傳球();

protected:
     傳球消息();
private:
     List<無(wú)球隊(duì)員*> *_無(wú)球隊(duì)員;
};

void 傳球消息::預(yù)備傳球(無(wú)球隊(duì)員* 對(duì)象){
      _無(wú)球隊(duì)員->開始觀察(對(duì)象);
}

void 傳球消息::繼續(xù)帶球(無(wú)球隊(duì)員* 對(duì)象){
     _無(wú)球隊(duì)員->停止跑動(dòng);
}

void 傳球消息::傳球(){
     ListIterator<無(wú)球隊(duì)員*> i(_無(wú)球隊(duì)員);
     for (i.First();i.IsDone();i.Next()){
          i.CurrentItem()->傳球后更新跑動(dòng)(this);
     }
}

隊(duì)形的保持需要memento模式,非凡是兩個(gè)邊后衛(wèi),上一場(chǎng)意甲AC米蘭輸給佩努賈,主要是因?yàn)檫吅笮l(wèi)助攻后未回原位所致。這里使用memento主要是象使用contra那樣讓邊后衛(wèi)兼任邊前衛(wèi),但假如隊(duì)員能力不足,或防守任務(wù)過(guò)于艱巨,以至于需要邊后衛(wèi)反復(fù)無(wú)效的往返奔跑則不應(yīng)該使用此模式。這里由教練事先演練的算法,由一個(gè)虛擬的caretaker由進(jìn)攻的需要向邊后衛(wèi)(originator)發(fā)出請(qǐng)求,生成一個(gè)虛擬的memento,后衛(wèi)前插助攻,防守時(shí)邊后衛(wèi)因?yàn)閏aretaker的防守需要的請(qǐng)求,返回到memento的位置。
代碼如下:
class 邊后衛(wèi){
public:
     防守位置* 創(chuàng)建防守位置();
     void 設(shè)置防守位置(const 防守位置*);
private:
     位置* _位置;
};

class 防守位置{
public:
      virtual ~防守位置();
pivate:
      friend class 邊后衛(wèi);
      防守位置();

     void 設(shè)置位置(位置*);
     位置* 得到位置();
private:
     位置* _位置;
};



發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 吉林市| 元谋县| 宁都县| 承德县| 东丽区| 永修县| 喀什市| 新巴尔虎左旗| 田阳县| 清流县| 云林县| 茶陵县| 祥云县| 大名县| 临朐县| 芦溪县| 明光市| 神农架林区| 石城县| 宝兴县| 饶平县| 白山市| 石河子市| 新竹县| 墨脱县| 肇源县| 文山县| 凯里市| 葫芦岛市| 中西区| 长白| 曲松县| 洪洞县| 宁河县| 麟游县| 祁东县| 朝阳县| 安吉县| 阳朔县| 沂水县| 昌宁县|