接上回:
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:
球员();
};