Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Что остается после удаления объекта в спрайте (http://www.flasher.ru/forum/showthread.php?t=210070)

Godwarlock 22.01.2015 13:14

Что остается после удаления объекта в спрайте
 
Код AS3:

private var conteiner:Sprite;
private var obj:sprite_obj;
private var arr:Array;
function addObj():void
{
conteiner = new Sprite;
addChild(conteiner);
 
obj = new sprite_obj;
arr.push(obj);
conteiner.addChild(obj);
}
 
function removeObj()
{
removeChild(arr[0]);
obj = null;
}

Вот собственно такой простой код. Я создаю объект, кидаю его в массив и кидаю его в спрайт. Удаляю я его только из массива - визуально он исчезает. Что собственно остается после удаление от этого объекта?

KBAC 22.01.2015 13:20

После удаления ссылок на объект он останется в памяти, пока его не удалит автоматический сборщик мусора.

Кстати, не забудьте его из массива удалить. И не ясно зачем вам массив, если есть private var obj.

Godwarlock 22.01.2015 13:22

То есть то что я его кинул в спрайт другого так сказать объекта, никак не влияет на его будущее удаление? Массив нужен, если создается к примеру не один такой объект, а десятки, а то и сотни. И просто для удобства, циклом пробежать по массиву и удалить каждый объект мне показалось проще.

KBAC 22.01.2015 13:31

Если вы его из дисплей листа не удалите - объект не удалится.

И вот здесь
Код AS3:

removeChild(arr[0]);

у вас будет ошибка. Я проглядел. Показалось, что вы его из conteiner удаляете.

Godwarlock 22.01.2015 13:33

Тогда что сохраняется в массив? Ссылка на объект?

PainKiller 22.01.2015 13:35

да, ссылка.

Добавлено через 33 секунды
Объекты вообще доступны только по ссылкам.


Часовой пояс GMT +4, время: 22:50.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.