Increment and Decrement Operators
D provides the special unary ++ and -- operators for incrementing and
decrementing pointers and integers. These operators have the same meaning as in
ANSI-C. These operators can only be applied to variables, and may be
applied either before or after the variable name. If the operator appears
before the variable name, the variable is first modified and then the
resulting expression is equal to the new value of the variable. For
example, the following two expressions produce identical results:
If the operator appears after the variable name, then the variable is
modified after its current value is returned for use in the expression.
For example, the following two expressions produce identical results:
You can use the increment and decrement operators to create new variables
without declaring them. If a variable declaration is omitted and the increment
or decrement operator is applied to a variable, the variable is implicitly
declared to be of type int64_t.
The increment and decrement operators can be applied to integer or pointer
variables. When applied to integer variables, the operators increment or decrement the
corresponding value by one. When applied to pointer variables, the operators increment
or decrement the pointer address by the size of the data type
referenced by the pointer. Pointers and pointer arithmetic in D are discussed
in Chapter 5, Pointers and Arrays.