![]() |
странное поведение as
Доброго времени суток. Возникла проблема с пониманием работы оператора as. Читал help и Мука и данный faq, но честно говоря, не понял.
На примере данного кода: Почему же вызывается метод destroy класса MapObject? Ведь разные типы имеют переменная _layerMain и класс MapObject. Код AS3:
|
_layerMain - имеет один тип, а _layerMain.getChildAt(0) - это совершенно другой обьект, который может иметь (и, в вашем случае, имеет) другой тип.
|
Цитата:
Код AS3:
|
что у Вас находится по адресу: _cells[brush.tileY][brush.tileX] и будет восприниматься как MapObject
|
Тип переменной _cells не переводится в этом коде в MapObject. Чтобы таки попробовать перевести и убедиться, что Array не переводится в MapObject, надо писать
Код AS3:
Код AS3:
|
приведите пример я че то не догоняю.
|
у вас на спрайте _layerMain лежит объект MapObject (от DisplayObject).
у вас в массиве _cells "лежит по адресу" [brush.tileY][brush.tileX] объект MapObject (от DisplayObject). |
_cells - сам массив
_cells[brush.tileY][brush.tileX] - конкретный элемент массива |
Цитата:
Аналогичный пример: Код AS3:
Код AS3:
Код AS3:
|
Цитата:
|
| Часовой пояс GMT +4, время: 23:49. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.