标题:新人求助 关于重载运算符的问题
只看楼主
mcfing
Rank: 2
等 级:论坛游民
帖 子:12
专家分:10
注 册:2012-4-18
结帖率:100%
已结贴  问题点数:20 回复次数:4 
新人求助 关于重载运算符的问题
#include <iostream.h>

class merchandise{
public:
  merchandise()
  {
      no=0;
      
      price=0.0;

  }

  ~merchandise()
 {
      no=0;
      
      price=0.0;

  }
  friend istream& operator>>(istream& in,merchandise& s);
  friend ostream& operator<<(ostream& out,merchandise& s);
private:
  int no;
  char *name;
  double price;
};
istream& operator>>(istream &in,merchandise &s)
{
    cout<<"请输入商品编号";
    cin>>s.no;
    cout<<"请输入商品名称";
    cin>>s.name;
    cout<<"请输入价格";
    cin>>s.price;
    return cin;

}
ostream&operator<<(ostream &out,merchandise &s)
{
    cout<<"输出结果为";
    cout<<endl;
    cout<<"编号";
    cout<<s. no;
    cout<<endl;
    cout<<"名称";
    cout<<s.name;
    cout<<"endl";
    cout<<"价格";
    cout<<s.price;
    cout<<endl;
    return cout;

}
int main()
{
  merchandise mer;
  cin>>mer;
  cout<<mer;
  return 0;
}在输入商品名称的时候会出错!
搜索更多相关主题的帖子: double 商品 public private include 
2012-12-18 11:28
mcfing
Rank: 2
等 级:论坛游民
帖 子:12
专家分:10
注 册:2012-4-18
得分:0 
自己顶
2012-12-18 11:42
wp231957
Rank: 16Rank: 16Rank: 16Rank: 16
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:5 
友元这块 暂时还不懂
我帮你转c++吧

DO IT YOURSELF !
2012-12-18 11:50
rjsp
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:507
帖 子:8890
专家分:53117
注 册:2011-1-18
得分:15 
程序代码:
#include <iostream>
#include <string>

class merchandise
{
public:
    merchandise() : no_(0), price_(0.0)
    {
    }

    ~merchandise()
    {
    }
private:
    int no_;
    std::string name_;
    double price_;

    friend std::istream& operator>>( std::istream& in, merchandise& s );
    friend std::ostream& operator<<( std::ostream& out, const merchandise& s );
};

std::istream& operator>>( std::istream& in, merchandise& s )
{
    return in >> s.no_ >> s.name_ >> s.price_;
}
std::ostream& operator<<( std::ostream& out, const merchandise& s )
{
    return out << "编号 " << s.no_ << '\n'
               << "名称 " << s.name_ << '\n'
               << "价格 " << s.price_;
}

using namespace std;

int main()
{
    merchandise mer;

    cout << "请输入商品编号 名称 价格" << endl;
    cin >> mer;

    cout << "输出结果为\n"
         << mer << endl;

    return 0;
}
2012-12-18 12:11
mcfing
Rank: 2
等 级:论坛游民
帖 子:12
专家分:10
注 册:2012-4-18
得分:0 
回复 4楼 rjsp
受益很多,谢!
2012-12-18 12:25



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-391803-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.057282 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved