友元friend在运算符重载中应用

友元friend在运算符重载中应用

 

#include  < conio.h >
#include 
< string >
#include 
< iostream >

using   namespace  std;

class  CProduct
{
public:
    CProduct(
int high,int weight, string productName);
private:
    friend ostream
& operator<<(ostream& os,CProduct &product);
private:
    
int m_high;        //
    int m_weight;      //重量
    string m_productName; //产品名称
}
;

 ostream
&   operator << (ostream &  os,CProduct  & product)
 
{
     os
<<"Product Name:"<<product.m_productName<<" weight:"<<product.m_weight<<" high:"<<product.m_high<<endl;

     
return os;
 }


 inline CProduct::CProduct(
int  high, int  weight,  string  productName)
 
{
     
this->m_high = high;
     
this->m_weight = weight;
     
this->m_productName = productName;
 }


int  main( int  argc, char   * argv[])
{
    CProduct product(
175,30,"pig");;
    cout
<<product;

    getch();
    
return 0;
}


你可能感兴趣的:(友元friend在运算符重载中应用)