Показать сообщение отдельно
Старый 19.09.2009, 12:05
progman вне форума Посмотреть профиль Отправить личное сообщение для progman Найти все сообщения от progman
  № 3  
Ответить с цитированием
progman
 
Аватар для progman

Регистрация: May 2007
Адрес: Saint-Petersburg
Сообщений: 136
Отправить сообщение для progman с помощью ICQ
Цитата:
Сообщение от etc Посмотреть сообщение
Но для того, чтобы он сработал, необходимо соблюдать правил «намусорил — убери».
хм...
ок. есть объект:
Код AS3:
unit = new Unit();// - создал
m_unitlist.push( unit ); //- добавил в массив
удалаю:
Код AS3:
var m_unit: Unit = m_unitlist[i];
m_unitlist[i] = m_unitlist[ m_unitlist.length - 1 ];
m_unitlist.pop();// - удалил из массива iй элемент
 
m_unit.destroy(); //вызываю деструктор
delete( m_unit ); 
m_unit = null;
при такой схеме удалится ли в реальности объект unit ?
удалится ли сама вся память под объекты в Unit выделенная через new или для каждого объекта вызвать delete надо?

ну и как нибудь можно подсмотреть у GC что в памяти осталось и что не убрано?
__________________
fast restart: *((int*)0) = 0;


Последний раз редактировалось progman; 19.09.2009 в 12:08.