5.5 使用具有风格的语言特性

2013-10-07 15:34:36 · 作者: · 浏览: 75

5.5  使用具有风格的语言特性

C++(www.cppentry.com)语言允许您做各种非常难懂的事情。看一下这些古怪的代码:

  1. i++ + ++i; 

这行代码很难懂,但是更重要的是C++(www.cppentry.com)标准没有定义它的行为。问题在于i++使用了i的值,同时还有将i值增加的副作用。C++(www.cppentry.com)标准没有说明什么时候增加值,这个副作用(增量)只有在";"之后才能看到,但是执行到这一行时编译器可以在任意点执行增量。无法知道那一个i值会用于i++部分,在不同的编译器以及不同的平台执行这段代码会得到不同的值。下面是具有不确定行为代码的另一个示例,您应该避免使用:
  1. a[i] = i++; 

在使用C++(www.cppentry.com)语言提供的强大功能时,应该考虑如何以良好的(而不是丑陋的)风格使用语言特性,这十分重要。