减法运算符

这产生的结果:

我有14美分。

重载的+运算符(+)是声明一个函数名为操作符+简单,给它的我们要添加的操作数的类型的两个参数,选择适当的返回类型,然后编写函数。

在我们美分对象的情况下,实现我们的操作符+()函数很简单。首先,参数类型:在这个版本的操作符+,我们要添加两美分的对象在一起,所以我们的功能将两个对象类型分。第二,返回类型:我们的运营商+要返回类型分,所以这是我们的返回类型。

最后,实施:添加两美分的对象在一起,我们真的需要添加m_ncents成员从每一美分的对象。因为我们的重载操作符+()函数类的一个朋友,我们可以直接访问我们的参数m_ncents成员。同时,由于m_ncents是一个整数,和C + +知道如何添加整数的加操作符一起使用,与整数运算内置的版本,我们可以简单地使用运算符来增加。

超载的减法运算符(-)也很简单:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
class Cents
{
private:
    int m_nCents;
 
public:
    Cents(int nCents) { m_nCents = nCents; }
 
    // overload Cents + Cents
    friend Cents operator+(const Cents &c1, const Cents &c2);
 
    // overload Cents - Cents
    friend Cents operator-(const Cents &c1, const Cents &c2);
 
    int GetCents() { return m_nCents; }
};
 
// note: this function is not a member function!
Cents operator+(const Cents &c1, const Cents &c2)
{
    // use the Cents constructor and operator+(int, int)
    return Cents(c1.m_nCents + c2.m_nCents);
}
 
// note: this function is not a member function!
Cents operator-(const Cents &c1, const Cents &c2)
{
    // use the Cents constructor and operator-(int, int)
    return Cents(c1.m_nCents - c2.m_nCents);



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值