3.3.2. Auto incremento y decremento

C, y por tanto C++, está lleno de atajos. Los atajos pueden hacer el código mucho mas fácil de escribir, y a veces más difícil de leer. Quizás los diseñadores del lenguaje C pensaron que sería más fácil entender un trozo de código complicado si los ojos no tienen que leer una larga línea de letras.

Los operadores de auto-incremento y auto-decremento son de los mejores atajos. Se utilizan a menudo para modificar las variables que controlan el número de veces que se ejecuta un bucle.

El operador de auto-decremento es -- que significa «decrementar de a una unidad». El operador de auto-incremento es ++ que significa «incrementar de a una unidad». Si es un entero, por ejemplo, la expresión ++A es equivalente a (A = A + 1). Los operadores de auto-incremento y auto-decremento producen el valor de la variable como resultado. Si el operador aparece antes de la variable (p.ej, ++A), la operación se ejecuta primero y después se produce el valor resultante. Si el operador aparece a continuación de la variable (p.ej, A++), primero se produce el valor actual, y luego se realiza la operación. Por ejemplo:

//: C03:AutoIncrement.cpp
// Shows use of auto-increment
// and auto-decrement operators.
#include <iostream>
using namespace std;

int main() {
  int i = 0;
  int j = 0;
  cout << ++i << endl; // Pre-increment
  cout << j++ << endl; // Post-increment
  cout << --i << endl; // Pre-decrement
  cout << j-- << endl; // Post decrement
} ///:~

Listado 3.10. C03/AutoIncrement.cpp


Si se ha estado preguntando acerca del nombre «C++», ahora lo entenderá. Significa «un paso más allá de C» [41]



[41] (N. de T.) ...aunque se evalúa como «C».