足球战术->单刀赴会之prototype篇

    技术2022-05-11  105

    接上回:

    http://www.csdn.net/Develop/read_article.asp?id=11949

    使用prototype模式,用其他队员牵制对手的注意力,然后带球队员通过个人技术甩脱对方的防守,单刀赴会得分(clone)。就像皇马在西甲半程时齐达内进的那个球。好处是在进攻进行时决定是否射门或改用其他方法;动态控制射门;改用不同球员来变化射门方式;减少进攻需要的队员数;动态换人改变进攻来改变战术。缺点是:需要每个队员都有单刀赴会的能力,实现起来比较困难:)代码如下:

    class 牵制队员:public 队员{public:    牵制队员(中路*,左路*,右路*);

        virtual 两路* 中路包抄 const;    virtual 右路* 左路包抄 const;    virtual 左路* 右路包抄 const;private:    两路* _中路包抄原型;    右路* _左路包抄原型;    左路* _右路包抄原型;};

    左路* 牵制队员::右路包抄 const{    return _右路包抄原型->左路单刀;}

    class 左路带球队员:public 带球队员{public:    带球队员();

        virtual void 启动();    virtual 左路* 左路单刀 const;private:     /*...自己特性*/};

    左路*  左路带球队员::左路单刀() const{     return new 左路(*this);}


    最新回复(0)