class Duck{
public:
FlyBehavior* flyBehavior;
QuackBehavior* quackBehavior;
void performFly() {
flyBehavior->fly();
}
void performQuack() {
quackBehavior->quack();
}
};
class MallardDuck:public Duck{
MallardDuck(){
flyBehavior = new FlyWithWings();
quackBehavior = new Quack();
}
};
class RubberDuck:public RubberDuck() {
flyBehavior = new FlyNoWay();
quackBehavior = new Squick();
};
本文通过C++类的定义与继承,展示了鸭子行为模式的应用,并以MallardDuck和RubberDuck类为例进行说明。
998

被折叠的 条评论
为什么被折叠?



