练习4.3
Posted dark-king
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了练习4.3相关的知识,希望对你有一定的参考价值。
4.3:C++语言没有明确规定大多数二元运算符的求值顺序,给编译器优化留下了余地。这种策略实际上是在代码生成效率和程序潜在缺陷之间进行了权衡,你认为这可以接受吗?请说出你的理由。
Ans:一方面C++语言没有明确规定大多数二元运算符的求值顺序,这提高了代码的生成效率。但是同时也会造成一些程序潜在缺陷,对于一些没有指定顺序的运算符,所在的表达式指向并修改了同一个运算对象,这种行为是未定义的。
另一方面,这种策略我觉得是可以接受的,对于不确定其求值顺序的运算,可以使用括号强制组合先进行运算,并且如果在表达式中修改了运算对象的值,就不要在该表达式的其他地方再使用这个值,这个是前提条件。
以上是关于练习4.3的主要内容,如果未能解决你的问题,请参考以下文章