Условный оператор ?: и оператор вычитания не дружат
Имеем следующий код:
- trace(”begin”);
- var bool:Boolean = true;
- var flea:Number = -(bool ? 10 : 20);
- trace(”flea: “+flea.toString());
При попытке компиляции во Flex 2 вы получите
“An internal build error has occurred. Please check the Error Log.” или
“1131: Classes must not be nested.”. Т.е., ничего работающего Вы не получите.
А Flash Вам вообще ничего не скажет, но в output Вы не увидите даже “begin”.
Это относиться только к ActionScript 3.0. В ActionScript 2.0 приведенный код скомпилируется как нужно.
P.S. Про приведенную ошибку во Flex 2 Вы можете почитать тут (на английском). Она появляется ещё в некоторых случаях.
март 5, 2008 в 14:21
[…] Умовний оператор ?: та оператор віднімання не товаришу?… Блоха з DisplayObject.alpha […]
март 17, 2008 в 18:33
Спасибо огромное!
- такие глюки, если о них не знать, могут выесть весь мозг.
Это очень полезная информация.
октябрь 11, 2008 в 22:51
Было интeрeсно почитать. Спасибо.
октябрь 30, 2008 в 21:28
Автор, а вы в каком городе живете если не секрет?
ноябрь 10, 2008 в 14:37
Помнится, кто-то выкладывал фотки…
ноябрь 20, 2008 в 17:38
Неплохо
ноябрь 20, 2008 в 21:11
Интересная тема, Спасибо!
ноябрь 22, 2008 в 6:53
Даже и не придирешься!
ноябрь 25, 2008 в 17:28
Спасибо! Буду теперь заходить на этот блог каждый день!
декабрь 4, 2008 в 0:31
Спасибо, интересно было прочитать.
декабрь 4, 2008 в 22:12
Шрифт трудно читается у вас на блоге