码迷,mamicode.com
首页 > 编程语言 > 详细

C++ 重写简写运算符

时间:2020-05-31 11:16:30      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:修改   返回   include   add   c++   运行   class   log   href   

C++提供了很多简写的运算符,比如:+=、-=、*=、/= 和 %= 。我们在Rational类(C++ 有理数类)中重载这些运算符。

废话不多说,直接上代码,我们用+=来举例。

1. 修改Rational.h文件

Rational& operator+=(const Rational& secondRational);

注意我在返回类型的Rational后面加了符号“&”,这是因为+=这个运算符要做赋值操作。(详细参考上一篇博客C++ 重写[]运算符

2. 修改Rational.cpp文件

Rational& Rational::operator+=(const Rational& secondRational) {
    *this = add(secondRational);
    return *this;
}

3. 测试

#include <iostream>
#include "Rational.h"

using namespace std;

int main()
{
    Rational r1(4, 2);
    Rational r2(2, 3);

    cout << r1[0] << "/" << r1[1] << " + " << r2[0] << "/" << r2[1] << " = ";
    r1 += r2;
    cout << r1.toString() << endl;

    return 0;
}

运行结果:

技术图片

其他简写运算符和+=几乎一样,就不多赘述了。

C++ 重写简写运算符

标签:修改   返回   include   add   c++   运行   class   log   href   

原文地址:https://www.cnblogs.com/bwjblogs/p/12993534.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!