/ / Чому Flash Builder робить кожен примірник можливим рядок? - actionscript-3, flash, actioncript, builder

Чому Flash Builder робить кожен примірник можливим рядок? - actionscript-3, flash, actioncript, builder

Припустимо, ви використовуєте flash builder (4.7) з флеш-професіоналом (або введення флеш-професійних активів у swc або swf), і у вас є весь екран в одному символі. Тож ви хочете перетягнути все в змінну. Щось на зразок цього:

_pictureThing = _startScreen["pictureThing"] as Sprite.

Це дасть вам червоний під бар, тому що виНе вдалося згадати _pictureThing ще.Так що ви натискаєте ctrl + 1, виберіть зробити змінну екземпляру.Звичайно.Але тепер, коли ви піднімаєтеся до вершини класу, це String! ЧОМУ? Я сказав, як Sprite. Єдине Я б очікував, що це буде Sprite.Як це, можливо, не є функцією Flash Builder? Це як би вони пішли майже до ідеального редактора, а потім сказав: "Ні, хай просто не закінчити його. Дозвольте це просто зробити це божевільне перестрибування камери замість цього ". Створення кожної змінної типу String може здатися не великою справою, але коли у вас є багато змінних, час дійсно збільшується. Можливо, мій шлях просто працює, але це не синтаксис, який Flash Builder хоче, щоб я написав це?

Відповіді:

0 для відповіді № 1

Оскільки кожен предмет має toString() реалізація, якщо редактор Flash Builderне може визначити передбачуваний тип змінної, він вважає, що значення String як значення за замовчуванням є його типовим. Питання про те, чому FB "s devs не зробив його розбору as вислів як передбачуваний тип типу setter відкритий, моє дивне навіювання буде спадщиною, як Sprite є нащадком сказати DisplayObjectContainer тип, тому може бути, що var має бути такого типу, або, можливо, на одному рівні менше (EventDispatcher), або можливо Object зразу. Напевно, виправлений Fygo розміщений в коментарях може зробити це для вас:

_pictureThing = Sprite(_startScreen["pictureThing"]); - Fygo 22 хв тому

але невизначеність спадщини все ще залишається. Я кажу, просто дозвольте це бути.