More Effective C++读书笔记7

Item 7:不要重载“&&”,“||”, 或“,”


        C/C++中“&&”和“||”操作符是采用短路计算法的,而且是有顺序的。即从左往右计算,如果一旦确认表达式的值,那么后面的表达式或计算不再执行。而重载运算符本质上是函数重载,即运算符操作为函数操作。operator &&()有两种情况,一是全局重载,二是作为类成员函数;如果是全局重载,那么调用本质为 "operator &&(expression1, expression2)",而C++并没有规定参数的计算顺序,所以没有办法保证重载的&&保持原意不变。成员函数形式为expression1.operator&&(expression2),跟全局问题一样,所以“&&”和“||”操作符适合重载。“,”运算符也是相同的原因,这里不再赘述。

        操作符重载的目的是为了程序更容易阅读,理解和书写。
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值