У меня есть код, который выглядит следующим образом:Каковы последствия двойных определений переменных?
var variableX:uint = something;
if (variableX > 1)
{
var variableY:uint = foo;
}
else
{
var variableY:uint = bar;
}
При компиляции в FlashDevelop, компилятор дает следующее предупреждение:
Warning: Duplicate variable definition.
Будучи новичком в AS3 и программировании я не люблю предупреждения компилятора , Компилятор смотрит на меня сквозь прищуренные глаза и говорит: «Хорошо, приятель, я отпущу тебя на этот раз, но я предупреждаю тебя!» и затем не говорит мне, что в этом плохого, что я делаю.
Что мне следует знать, когда я делаю что-то подобное? Я имею в виду, что я мог бы, очевидно, определить переменную вне if
, и тогда это не было бы проблемой, но, может быть, есть что-то еще? Или компилятор просто дает полезный толчок, говоря: «эй, возможно, вы случайно создали две разные переменные с тем же именем»?