zoukankan      html  css  js  c++  java
  • c++PrimerChap7类

    仅仅记录贴,按书上的做完了一边,想把private分离出来已经很难了。因为is用到的成员变量都是直接当做public使用的,如果要改的话可以考虑存储输入,让后用构造函数对类进行初始化。

    #include<iostream>
    using namespace std;
    
    
    class Sales_data{
    public:
    
    		string bookNo;
    		unsigned unit_sold;
    		double revenue;
    
    		string isbn()const {return this->bookNo;	}
    		double avg_price()const;
    		Sales_data &combine(const Sales_data&);
    		Sales_data(istream &is);
    		//友元函数 
    		friend Sales_data add(const Sales_data& ls,const Sales_data& rs);
    }; 
    
     Sales_data add(const Sales_data& ls,const Sales_data& rs)
    {
    	Sales_data sum = ls;
    	sum.combine(rs);
    	return sum;
    }
    //返回的值是对ostream的引用 
    ostream &print(ostream& os,const Sales_data &item){
    	os<<item.isbn()<<endl
    	  <<item.unit_sold<<endl
    	  <<item.revenue<<endl;
    	  return os;
    	
    }
    istream &read(istream & is,Sales_data &item){
    	double price = 0;
    	is>>item.bookNo
    	>>item.unit_sold
    	>>price; 
    	item.revenue = price * item.unit_sold; 
    	return is;
    }
    
    double Sales_data::avg_price()const{
    	if(revenue)return revenue/unit_sold;
    	else return 0;
    }
    
    Sales_data& Sales_data::combine(const Sales_data& rhs){
    //    this->revenue  = this->revenue + rhs.revenue;
    	this->revenue +=  rhs.revenue; 
    	this->unit_sold += rhs.unit_sold;
    	return *this;
    }
    	//外部定义构造函数
    Sales_data::Sales_data(istream &is) {
    		read(is,*this);
    	}
      
    int main(){
    	
    	
    	return 0;
    }
    

      

    很多时候我都在期待3年后的自己是一个什么样的,5年后自己又是一个什么样的。因为未知,所以生命才更加精彩。
  • 相关阅读:
    访问前端项目时Http请求变成了HTTPS
    Jenkins升级后无法正常启动(java.lang.IllegalStateException: An attempt to save the global configuration ......
    准备开始学习了。
    Nginx的安装与使用
    Linux 学习001
    Nginx为什么比Apache Httpd高效:原理篇
    Asp .Net Core Spa (二)
    Asp .Net Core Spa (一)
    基础笔记(三):网络协议之Tcp、Http
    跨平台运行ASP.NET Core 1.0
  • 原文地址:https://www.cnblogs.com/ashen/p/4396890.html
Copyright © 2011-2022 走看看