#include<iostream>
#include<string>
using namespace std;
class Sales_item{
public:
Sales_item(){
str_isbn = "";
ui_num = 0;
f_price = 0.0;
f_total_price = 0.0;
}
string isbn(){
return str_isbn;
}
//重载输入
friend istream& operator>> (istream &is, Sales_item &item) {
return is>>item.str_isbn>>item.ui_num>>item.f_price;
}
//重载输出
friend ostream& operator<< (ostream &os, const Sales_item &item){
return os<<item.str_isbn<<" "<<item.ui_num<<" "<<item.f_price*item.ui_num<<" "<<item.f_price<<endl;
}
//重载+运算符
Sales_item& operator+ (const Sales_item& st_item ){
f_total_price = ui_num * f_price + st_item.ui_num * st_item.f_price;
ui_num += st_item.ui_num;
f_price = f_total_price / ui_num;
}
private:
string str_isbn;//书的ISBN
unsigned int ui_num;//售出的册数
float f_price;//销售价格
float f_total_price;//总销售额
};
C++ primer的Sales_item类
最新推荐文章于 2024-05-07 22:48:48 发布