某些表达式的意义不明确。 当在同一表达式中多次修改对象的值时,这些表达式最常见。 当语言没有定义表达式的计算顺序时,这些表达式依赖于特定的顺序计算。 请看下面的示例:
int i = 7;
func( i, ++i );
C++ 语言不保证计算函数调用的参数的顺序。 因此,在前面的示例中,func 的参数可以接受值 7 和 8 或 8 和 8,取决于参数是从左到右还是从右到左计算。
某些表达式的意义不明确。 当在同一表达式中多次修改对象的值时,这些表达式最常见。 当语言没有定义表达式的计算顺序时,这些表达式依赖于特定的顺序计算。 请看下面的示例:
int i = 7;
func( i, ++i );
C++ 语言不保证计算函数调用的参数的顺序。 因此,在前面的示例中,func 的参数可以接受值 7 和 8 或 8 和 8,取决于参数是从左到右还是从右到左计算。