Чем эти два способа вписывания типов в ActionScript 3 отличаются? - PullRequest
1 голос
/ 21 октября 2010

В Lynda.com title "ActionScript 3.0 во Flash CS3 Professional - помимо основ" Тодд Перкинс показывает, как один из способов ввода типов

var xml: XML;
xml = event.target.data as XML  

не работает, а

var xml: XML;
xml = XML(event.target.data)  

делает. Разве обе формы не должны действовать одинаково? Чем они отличаются?
TIA
Стивен

редактировать
объявления, добавленные в код

Ответы [ 2 ]

4 голосов
/ 21 октября 2010

В основном они различаются на XML(event.target.data), что означает «приведение к этому типу», где event.target.data as XML означает «притворство, что это XML».

Первый тип - это то же преобразование, что и в других языках, таких как Java. Это полезный способ, чтобы код не нуждался в блоке try-catch вокруг приведения. Использование as вернет первый операнд, если это правильный тип, или ноль в противном случае.

Вам нужно взглянуть на как оператора , если вам нужна дополнительная информация.

1 голос
/ 21 октября 2010

Оператор as возвращает null, если левый операнд (event.target.data) не является экземпляром правого операнда (ожидаемый тип = XML), тогда как в этом случае приведение типа приводит к исключению.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...