C++中“++obj”和“obj++”的重载

本文介绍了C++中自增(++obj)和自减(--obj)运算符在C++2.1及以上版本中的区别,重点讲解了如何通过在函数参数中插入int关键字来区分前缀和后缀重载,以及相应的成员函数和友元函数重载方法。
摘要由CSDN通过智能技术生成

我们知道,自增运算符“++”和自减运算符“--”放置在变量前面与后面,其作用是有区别的。

在C++ 2.1及以后的版本中,C++编辑器可以通过在运算符函数参数表中是否插入关键字int来区分这两种方式

对于前缀方式++obj,可以用运算符函数重载为:

ob.operator++();  //成员函数重载

operator++( X &ob);  //友元函数重载,其中ob为X类对象的引用

对于后缀方式obj++,可以用运算符重载为:

ob.operator++(int);  //成员函数重载

operator++(X &ob,int);  //友元函数重载,其中ob为X类对象的引用

以上是++obj和obj++的例子,--obj和obj--也同理

综上所述:重载obj++或者obj--时需要插入关键字int来区分 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Valueyou24

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值