Oui. Toujours initialiser vos variables avant utilisation. Même si le langage garantit qu'elles auront des valeurs spécifiques. Si vous ne pouvez pas vous forcer, obtenez un compilateur qui se plaindra, puis obligez-vous à le faire. :)
Cependant, Ne le fais pas. initialiser des valeurs à moins que cela n'ait vraiment un sens pour elles d'être initialisées. Par exemple, si vous avez une boucle comme celle-ci (je ne dis pas que c'est un bon code, c'est juste un exemple) :
int i = 0;
while ((i = getNum()) == 5)
{
}
Ne pas initialiser i
à zéro comme je l'ai fait. Cela n'a pas de sens, et bien que cela arrête le compilateur, cela introduit la possibilité que vous l'oubliiez et que votre code soit abîmé. Si vous pouvez vous forcer à n'initialiser qu'aux bons moments -- ni plus, ni moins -- alors vous rendrez le débogage beaucoup plus facile, puisque votre fichier un code erroné regardez faux même à un simple coup d'oeil .
Donc, en une ligne : Ne jamais initialiser juste pour éviter que le compilateur ne se plaigne, mais toujours initialiser avant l'utilisation.
0 votes
Pourquoi ? stackoverflow.com/questions/1910832/
0 votes
Notez que la lecture d'une variable non initialisée conduit à UB. Ne le faites pas.
2 votes
Un bogue "intéressant" qui peut apparaître dans cette situation est que b et !b valent tous les deux true.