足球战术->边锋之Decorator篇

    技术2022-05-11  112

    接上回:

    http://www.csdn.net/develop/article/11/11001.shtm

    在足球战术中常常使用边锋战术,也就是Decorator模式。主要优点是可以在不改变球队整体战术的前提下,增加一个左边锋或者右边锋,增加进攻的威胁。缺点是有时候并不好控制,必须要保持边前锋和全队的接口的一致性。如果全度的打法过于繁杂,则使用边前锋的代价太高。一定要打法简练实用的球队(如荷兰队对overmars)才可以用此模式。对于打法繁杂的球队可以使用strategy模式。代码如下:class 球队{public:    球队();   virtual void 进攻();   virtual void 组织();};

    class 边锋:public 球队{public:     边锋(球队*);

        virtual void 进攻();    virtual void 组织();private:    球队* _实例;};

    void 边锋::进攻(){    _实例->进攻();}

    void 边锋::组织(){   _实例->组织();}

    class 左边锋:public 边锋{public:    左边锋(球队*,int 左边宽度);

       virtual void 进攻();private:   void 左边进攻(int);private:   int _宽度;};

    void 左边锋::进攻(){   边锋::进攻();   左边进攻(_宽度);}


    最新回复(0)