Bru*_* Su 1 c++ overloading constants
我已经超载了运营商+ Integer operator+(Integer & a, Integer & b).但是当我执行a = b + c + d时,它会将无效操作数的错误提供给二进制表达式.但是通过添加const参数,不会再出现错误.为什么会这样?
b + c + d生成临时结果b + c.然后将对该临时的引用传递给第二次调用operator+().
只有const引用可以绑定到临时对象.
有关进一步的讨论,请参阅非const引用如何无法绑定到临时对象?
| 归档时间: |
|
| 查看次数: |
718 次 |
| 最近记录: |