为什么不是--x和--y?

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

您好, 前置和后置的格式区分在于operator--()和operator--(int)。x--;y--;操作只是做了一个减法-1的操作。

1、前置返回的是引用,后置返回的是临时对象。因为后置的时候原来的对象已经被--改变了。前置用引用则是为了不产生临时变量,减少内存的消耗而已。
2、注意后置的函数声明,参数列表中比前置多了一个int,这里似乎是不符合运算符重载的定义的,--是属于一元运算符,理应后置时没有右边的数作为参数进行传入。所以说,这里的int其实是作为区分前后置的标志而已,在函数体里面并没有直接地用到。作为一个规则把它记住就好。 

如果解决了您的问题,请采纳,祝学习愉快!

  • Michelleqyh 提问者 #1
    非常感谢!
    2018-05-18 10:20:18
guly 2018-05-16 13:52:13

你好,c++的语法规则如此,祝学习愉快!

  • 提问者 Michelleqyh #1
    前置的语法规则不应该是--x和--y吗?
    2018-05-17 22:00:14
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
C++零基础入门 热门编程语言 二级考试必备
  • 参与学习       529    人
  • 提交作业       110    份
  • 解答问题       593    个

无论您是零基础、还是想晋升,亦或是想转型,C++无疑都是最佳选择。本路径共分为基础语法、指针与引用、面向对象三大模块,为你开启入门C++编程的大门!

了解课程
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师