永发信息网

C++高分求解答。

答案:3  悬赏:50  手机版
解决时间 2021-03-17 16:29
已知一个有理数类 zrf_Ratio,实现以下的操作符重载
friend zrf_Ratio operator-(const zrf_Ratio&);
friend zrf_Ratio operator+(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator-(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator*(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator/(const zrf_Ratio&, const zrf_Ratio&);
friend std::ostream& operator<<(std::ostream&, const zrf_Ratio&);
friend std::istream& operator>>(std::istream&, zrf_Ratio&);
friendbooloperator==(const zrf_Ratio&, const zrf_Ratio&);
friendbooloperator<(const zrf_Ratio&, const zrf_Ratio&);
zrf_Ratio& operator=(const zrf_Ratio&);
zrf_Ratio& operator*=(const zrf_Ratio&);
zrf_Ratio operator++();
zrf_Ratio operator++(int);

这里给出类的定义及重载操作符的声明,请大家完成函数的实现,并用主程序验证相关操作符重载的正确性,输出相关的实验结果
class zrf_Ratio
{
friend std::ostream& operator<<(std::ostream&, const zrf_Ratio&);
friend std::istream& operator>>(std::istream&, zrf_Ratio&);
friendbooloperator==(const zrf_Ratio&, const zrf_Ratio&);
friendbooloperator<(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator-(const zrf_Ratio&);
friend zrf_Ratio operator+(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator-(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator*(const zrf_Ratio&, const zrf_Ratio&);
friend zrf_Ratio operator/(const zrf_Ratio&, const zrf_Ratio&);

public:
zrf_Ratio& operator=(const zrf_Ratio&);
zrf_Ratio& operator*=(const zrf_Ratio&);
zrf_Ratio operator++();
zrf_Ratio operator++(int);
zrf_Ratio(int=0,int=1);
zrf_Ratio(const zrf_Ratio&);
int numerator() const;
int denominator() const;
zrf_Ratio reciprocal() const;
void invert();
operatordouble() const;
void print() const;
private:
int num;
int den;
void reduce();
};

好的话还有加分。
最佳答案
..........这要写的也太多函数了,给个样板自己做吧:
zrt_Ratio operator*(const zrf_Ratio& r1, const zrf_ration& r2){
num=r1.num*r2.num;
den=r1.den*r2.den;
return *this;
}
全部回答

 case 2:
   {
    double compare=getaverage(s,m);
    for(int k=0;k<m;k++)
    if(s[k])-----
   }

case 3:
   {
    char code[max];
    cout<<"输入你想要找的学号:";
    cin>>code;
    int result=search(s,m,code);
    if(result==-1)
    cot<<"您输入的学号不存在!!!"<<endl;-------
    else
    print(s[result]);
   }
目测发现这两处,现在我机器上没装编译器。其它的不好说你先改改看吧

麻烦说清楚点 重载的运算符要做什么 . 对 对象的什么成员操作??
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
酒后损坏小区公共设施如何定案
<<千王群英会>>最后的结局是什么
重庆鸡公煲陈堡店地址在哪,我要去那里办事
修改病句,他喝了十八碗洒,一大盘牛肉,大步
布袋除尘器在压差达到1500pa时清灰最佳,但是
不锈铁材料用什么刀具好车
互联网技术交流活动有哪些?
省第一人民医院治鼻炎希要多少钱
上下一是什么子
主板上的电源接口有20针有24针的,它们有什么
王安石与谁并称“王孟”
足之堂足浴保健中心怎么去啊,有知道地址的么
科三网上预约前天预约的 现在还在业务受理的
延边大学游泳馆最浅多少米?
刚才朋友给我发短信求助:“我在和同
推荐资讯
江口我想知道这个在什么地方
信用卡两年没用没额度了
淘宝网卖的2000多点的组装电脑可以买吗
翻版衣服是什么意思
杰弗瑞景观设计事务所这个地址在什么地方,我
快手视频上的歌怎么唱到半截就不唱了怎么回事
脱发找不到女朋友。烦恼
电影主人公叫开开,是一个孩子,是一个留守儿
我想做一个品管员,要具备什么条件?
广东美嘉绒布工艺地址在哪,我要去那里办事
女孩子QQ空间留言:其实实一开始有些事情我就
科目一是什么类型题目
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?