策略模式
#include<iostream>
using namespace std;
//策略模式(Strategy):定义算法家族,分别封装起来,让算法之间可以相互替换,且不会影响到使用算法的Client客户
//抽象收费策略
class CashSuper {
public:
virtual double acceptCash(double money) = 0;
};
//正常收费类
class CashNormal :public CashSuper {
public:
virtual double acceptCash(double money) {
return money;
}
};
//打折收费类
class CashRebate :public CashSuper{
public:
CashRebate(double _moneyRebate