C++语言程序设计

下面我们举几个例子，以帮助学习者对表3-13的理解。
a = b + c * d
c * d首先被计算，因为*比+和=的优先级更高，其结果被加到b，因为+的优先级比=的优先级要高，接着进行赋值运算。我们可以用圆括号改变优先级规则，例如，把上面的表达式修改为：
a = (b + c) * d
则+在*之前运算。我们再看下面的例子：
a = b += c
由于=和+=有相同的优先级，且它们是从左向右结合的，所以，b+=c首先被计算。
我们可以参照下面的表达式来进一步加深对运算符优先级的理解：
c = a+b*a-b
它的运算次序是，第一步先运算b*a，第二步把第一步运算的结果和a相加，第三步把第二步运算的结果减去b，最后一步把第三步的运算结果赋值给左值c。
可以用括号来改变其运算的次序，如改变成如下的形式：
c = (a+b)*(a-b)
则它的的运算次序是，第一步运算a+b，第二步运算a-b，第三步把前面两步的运算结果相乘，最后一步把相乘的结果赋值给左值c。
经验：不同类型的运算符混合使用时，即使实现优先级与实际需要相符，最好也使用括号隔离之，以便代码更加清晰。当然，在实现优先级与实际需要不相符时，更需要使用括号来改变之。
如本来是正确的代码：
if (year%4==0‖year%100!=0 &&year%400==0)
如果加上括号，则更加清晰，提高了程序的可读性、可维护性。
If（(year%4)==0‖（year%100）!=0 &&（year%400）==0）