C++之运算符重载(四)

第三篇地址:

https://blog.csdn.net/zy010101/article/details/105247142

不要重载逻辑与(&&)和逻辑或(||)

不要重载逻辑与(&&)和逻辑或(||)

不要重载逻辑与(&&)和逻辑或(||)

 

因为逻辑与和逻辑或提供了一个特殊的规则,那就是“短路规则”。这个规则限制了我们无法重载他们,或者说一旦去重载他们,我们无法保证错误不发生。因为运算符重载的本质是函数,而函数参数在传递的过程中都会被计算,被求值。这样无法实现“短路规则”。

因此,重载这两者的风险是非常巨大的,建议不要重载。

发布了222 篇原创文章 · 获赞 174 · 访问量 16万+

猜你喜欢

转载自blog.csdn.net/zy010101/article/details/105249793