足球战术->球员状态之state篇

    技术2022-05-11  151

    接上回:

    http://www.csdn.net/develop/read_article.asp?id=11330

    在比赛时根据球员的状态来决定他的表现,可以使用state模式。其中球队是context,球员是state,教练是client。好处是将特定状态相关的行为局部化,并且将不同状态的行为分割开来;使得状态转换显示化;而且球员可以被多个教练(client)共享。代码如下:class 球队{public:    球队();private:    friend class 球员;    void 改变状态(球员*);private:     球员* _状态;};

    class 球员{public:     //所有操作protected:     void 改变状态(球队*,球员*);};

    class 球员状态不佳:public 球员{public:    static 球员* 实例();

        virtual void 坐冷板凳(球队*);};

    class 球员状态很好:public 球员{public:    static 球员* 实例();

        virtual void 上场首发(球队*);};


    最新回复(0)