15.14

//15.14 重新定义bulk_item和item_base类,使每个类只需定义一个构造函数
#include<iostream>
#include<string>
using namespace std;
class item_base
{
public:
	item_base(const string &book="",double sales_price=0.0):
		isbn(book),price(sales_price){}
	string book()const
	{
		return isbn;
	}
	virtual double net_price(size_t)const
	{
		return price*n;
	}
	virtual ~item_base(){}
private:
	string isbn;
protected:double price;
};
class bulk_item :public item_base
{
public:
	bulk_item(const string &book="",double sales_price=0.0,
		size_t qty=0,double disc=0.0):
		item_base(book,sales_price),min_qty(qty),discount(disc){}
	double net_price(size_t cnt)const
	{
		if (cnt > min_qty)
			return cnt*(1 - discount)*price;
		else
			return cnt *price;
	}
private:
	size_t min_qty;
	double discount;
};

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值