C++语言程序设计之处理复合表达式的两条经验准则

在C++语言中,以下两条经验准则对书写复合表达式有益:

1、拿不准的时候最好用括号来强制让表达式的组合关系符合程序逻辑的要求。

2、如果改变了某个运算对象的值,在表达式的其他地方不要再使用这个运算对象。

第2条规则有个重要的例外,当改变运算对象的子表达式本身就是另外一个子表达式的运算对象时该规则无效。例如,在表达式*++iter中,递增运算符改变了iter的值,求值的顺序不会成为问题,因为递增运算(即改变运算对象的子表达式)必须先求值,然后才轮到解引用运算。显然,这是一种很常见的用法,不会造成什么问题。

Leave a Reply

Your email address will not be published. Required fields are marked *