- Сообщения
- 4,020
- Репутация
- 626
Прошу подтвердить следующую багу
У меня показывает, что $N = 3, хотя это значение внутри функции.
моя конфигурация
Win7 x64 Rus, AutoIt 3.3.8.0
Проблема решается принудительным объявлением переменной как Local внутри функции, что не очень удобно
Добавлено:
откатился на версию 3.3.6.1, то же самое. я всегда думал, что все, что определено внутри функций остается внутри функции, если только это не глобальные переменные. кто-нибудь объяснит, в чем дело?
Добавлено:
почитал справку, давно этого не делал :-[
и подумать не мог, что такое поведение по умолчанию.
тема решена и закрыта в связи с неактуальность.
PS: интересно, зачем тогда ключевое слово Global, если по умолчанию все переменные и так глобальные.
Код:
Func a()
$N = 3
EndFunc
$N = 5
a()
ConsoleWrite($N & @CRLF)
У меня показывает, что $N = 3, хотя это значение внутри функции.
моя конфигурация
Win7 x64 Rus, AutoIt 3.3.8.0
Проблема решается принудительным объявлением переменной как Local внутри функции, что не очень удобно
Добавлено:
Сообщение автоматически объединено:
откатился на версию 3.3.6.1, то же самое. я всегда думал, что все, что определено внутри функций остается внутри функции, если только это не глобальные переменные. кто-нибудь объяснит, в чем дело?
Добавлено:
Сообщение автоматически объединено:
почитал справку, давно этого не делал :-[
и подумать не мог, что такое поведение по умолчанию.
тема решена и закрыта в связи с неактуальность.
PS: интересно, зачем тогда ключевое слово Global, если по умолчанию все переменные и так глобальные.