接上回:
http://www.csdn.net/develop/article/11/11042.shtm
球队的每个球员都代表一种战术,也就是strategy模式。 由于每个球员代表一个strategy,避免了整体球队战术的 复杂性。比如米兰的德比大战,AC米兰先失一球,而表示 防守战术的Albertini又状态不佳,于是换上表示进攻战术 的很具活力的contra,5分钟之类连下3城,反败为胜。但 由于分工明确,教练必须对每个队员的特性非常熟悉。而且 各队员之间的磨合也较为困难,且战术分散,不利于整体配合。 代码如下: class 球队{ public: 球队(球员*); void 组织(); private: 球员* _球员; 整体战术* _整体; int _球员数目; }
class 球员{ public: virtual int 组织(所有参数)=0; protected: 球员(); };
|