Guía de seguimiento dinámico de Solaris

Operadores de incremento y reducción

D proporciona los operadores unarios especiales ++ y -- para aumentar y disminuir los punteros y números enteros. Estos operadores tienen el mismo significado que en ANSI-C. Estos operadores sólo se pueden aplicar a las variables, y pueden aplicarse antes o después del nombre de la variable. Si el operador aparece antes del nombre de la variable, la variable se modifica en primer lugar y, a continuación, la expresión resultante es igual al nuevo valor de la variable. Por ejemplo, las siguientes dos expresiones producen resultados idénticos:

x += 1;

y = ++x;

y = x;

 

Si el operador aparece después del nombre de la variable, la variable se modifica después de que su valor actual se devuelva para utilizarse en la expresión. Por ejemplo, las siguientes dos expresiones producen resultados idénticos:

y = x;

y = x--;

x -= 1;

 

Puede utilizar los operadores de incremento y reducción para crear variables nuevas sin tener que declararlas. Si se omite una declaración de variable y el operador de incremento o reducción se aplica a una variable, la variable se declara implícitamente como de tipo int64_t.

Los operadores de incremento y reducción se pueden aplicar a variables de números enteros o a punteros. Cuando se aplica a variables de números enteros, los operadores incrementan o reducen el valor correspondiente en uno. Cuando se aplican a las variables de puntero, los operadores incrementan o reducen la dirección del puntero por el tamaño del tipo de datos referenciado por este puntero. Los punteros y la aritmética de punteros en D se explica en el Capítulo 5Punteros y matrices.