![]() |
/= и > приоритеты?
Я тут немного в недоумении, просветите пожалуйста, это в других языках тоже так, или это только AS3 отличился:
Код AS3:
Код AS3:
|
Ради интереса провёл тест в AVM1 - не компилирует
Код AS3:
Цитата:
Код AS1/AS2:
Вот так скобки фп расставляет: Код AS3:
Код AS3:
|
wvxvw, по-моему, вполне логично, что операторы присвоения имеют более низкий приоритет перед другими операторами (за исключением , ). Или в чем недоумение заключается? :)
|
Вообще это не должно компилироваться из-за того, что для нет операции деления для числа и Boolean.
|
Цитата:
|
да вроде бы и нет противоречия:
/= присваивает результат от деления на то то, что ему дали, а во втором пример ты ему даешь 1 (10 > 1) зы: результат излишней дружественности AS в части приведения типов Добавлено через 5 минут ззы: кому эти скобки мешали?, имо надо их всегда писать, да и читать проще |
Дада, а вот только инкремент / декремент, которые являются все теми же операциями присвоения работают как раз по-другому ;)
lowka: Выражение внутри while() кастуется к Boolean в любом случае. Вопрос бы о другом, почему операция деления и присвоения ведет себя не так, как операция прибавления и присвоения, например. |
Цитата:
Код AS3:
|
вообще-то они одинаково себя ведут.
a += b + c есть a += (b + c), что есть (a + b) +c, что тождественно a + b + c , а для умножения/деления a*=b + c есть a *= (b + c) что есть a*(b + c), а это есть a*b + b*c. |
lowka, откомпилируйте 2 кода что привел автор и поймёте, что не одинаково.
|
| Часовой пояс GMT +4, время: 15:07. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.