Да. ВСЕГДА инициализируйте ваши переменные перед использованием.Даже если язык гарантирует, что они будут иметь конкретные значения.Если вы не можете заставить себя, найдите компилятор, который будет жаловаться, а затем заставьте себя сделать это.:)
Однако не не инициализирует значения, если они не имеют смысла для их инициализации.Например, если у вас есть такой цикл (я не говорю, что это хороший код, это всего лишь пример):
int i = 0;
while ((i = getNum()) == 5)
{
}
Не инициализируйте i
в ноль, как я.Это не имеет смысла, и хотя он закрывает компилятор, он дает возможность забыть об этом, и тогда ваш код будет испорчен.Если вы можете заставить себя инициализироваться только в нужное время - ни больше, ни меньше - тогда вы значительно упростите отладку, поскольку ваш неправильный код будет выглядеть неправильнымдаже с первого взгляда .
Итак, в одной строке: Никогда не инициализируйте только для того, чтобы компилятор не жаловался, но всегда инициализируйте перед использованием.