Умовний оператор ?: та оператор віднімання не товаришують
четвер, Січень 17, 2008Маємо наступний код:
- 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 Ви можете почитати тут (англійською). Вона трапляється іще в декількох випадках.
