第三篇地址:
https://cloud.tencent.com/developer/article/1610985
不要重载逻辑与(&&)和逻辑或(||)
不要重载逻辑与(&&)和逻辑或(||)
不要重载逻辑与(&&)和逻辑或(||)
因为逻辑与和逻辑或提供了一个特殊的规则,那就是“短路规则”。这个规则限制了我们无法重载他们,或者说一旦去重载他们,我们无法保证错误不发生。因为运算符重载的本质是函数,而函数参数在传递的过程中都会被计算,被求值。这样无法实现“短路规则”。
因此,重载这两者的风险是非常巨大的,建议不要重载。