Expressões ambíguas
Determinadas expressões são ambíguas em seu significado.Essas expressões ocorrerem com mais freqüência quando o valor de um objeto é modificado em mais de uma vez na mesma expressão.Essas expressões contam com uma determinada ordem de avaliação, onde o idioma não define uma.Considere o exemplo a seguir:
int i = 7;
func( i, ++i );
A linguagem C++ não garante a ordem na qual os argumentos para uma chamada de função são avaliados.Portanto, no exemplo anterior, func foi possível receber valores 7 e 8, ou 8 e 8 para seus parâmetros, se os parâmetros são avaliados da esquerda para a direita ou da direita para a esquerda.