Cuando empecé a aprender a programar en c++ (creo que uno nunca acaba) me enseñaron que siempre hay que inicializar en cero o en algún otro valor las variables, porque si no, pueden tomar valores raros que podrían arruinar nuestro programa.
Vamos a ver si la leyenda es cierta:
#include using namespace std; int main() { int var1; cout << var1; }
Pues con mi compilador sí lo es, una variable sin inicializar toma valores raros. Pero si se han fijado en mis programas, yo no siempre inicializo mis variables, ¿por qué? Pues porque no siempre es necesario.
La regla es bastante simple: “Si la primera instrucción en la que usamos nuestra variable es de asignación, no es necesario inicializarla.” Por ejemplo:
cin >> var1; // no es necesario inicializarla var2 = 14; // no es necesario inicializarla cout << var3; // es necesario inicializarla var4 = cos(45); // no es necesario inicializarla var5++; // es necesario inicializarla if(var6 != 7) // es necesario inicializarla cin.getline(var7); // no es necesario inicializarla
Podemos seguir inicializando todas las variables que usemos, pero si únicamente inicializamos las necesarias vamos a dar la impresión de que sabemos lo que estamos haciendo XD