|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Цитата:
__________________
:) |
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Цитата:
|
|
|||||
Akopalipsis
В жизни переменной есть такие штуки как объявление, определение, инициализация Вообще часто некоторые из них совпадают, но также они могут происходить вообще в разных местах. В случае поднятия(всплытия) переменная определяется вверху метода, несмотря на то что объявлена ниже. Первичная инициализация происходит при определении. В этом случае перед началом цикла в переменную будет присвоен 0. Вот вам примерчик на разобраться. Несмотря что булеан по умолчанию равен нулю, это умолчание присваивается один раз на этапе инициалицации который происходит разу при определении. И это происходит вверху метода, не смотря на объявление в теле цикла. Во втором случае = false, как обычное использование, останется на месте. var i:int; for (i = 0; i < 5; i++) { var b:Boolean; trace(b); b = true; } trace('-------'); for (i = 0; i < 5; i++) { var b2:Boolean = false; trace(b2); b2 = true; }
__________________
:) |
|
|||||
Banned
[+4 24.02.14]
[+4 07.11.13] [+ 13.03.14] Регистрация: Mar 2013
Сообщений: 1,864
|
Aquahawk Спасибо Вам, полезно освежить в памяти, казалось бы обыденные вещи, но если честно сказать, то я полез в гугл, чтобы вспомнить значение слова - определение.
я переспросил только по тому, что хотел получить ответ не проверяя сам, мне почему то казалось что код выше, может еррор выкинуть при компиляции. |
|
|||||
Такой код просто править не удобно. Удалил 1-й цикл - надо править второй, поменял местами - надо править оба.
|
Часовой пояс GMT +4, время: 04:17. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|