Влияние перевыпуска объектов в Cocos2d?- «Сообщение отправлено освобожденному экземпляру» - PullRequest
0 голосов
/ 28 ноября 2011

У меня есть проект cocos2d.Все работает нормально, кроме случаев замены сцены.При замене сцены я получаю сообщение «Сообщение отправлено освобожденному экземпляру», за которым следует адрес памяти.

При структурировании моего проекта большинство CCNodes являются дочерними элементами основной «Сцены», которая заменяется.Эти узлы также хранятся в различных массивах для итерации среди похожих объектов и т. Д.

Я не могу представить, как я перевыпускаю какой-либо из объектов, поскольку добавление в массивы должно увеличить счетчик ссылок, как и добавлениена главную сцену.

Должен ли я что-то с этим сделать?Что произойдет, если я проигнорирую это?(Выключить NSZombies?) Ошибка появляется, когда объекты освобождаются, поэтому это должно означать, что объект уже выпущен правильно?

Любые предложения о том, как я могу понять, что я делаю неправильно?

1 Ответ

2 голосов
/ 28 ноября 2011

Вам нужно это исправить, так как это вызовет сбои, как только вы выключите NSZombies. Где-то в вашем коде ваше управление памятью не правильно. XCode может помочь вам найти его: запустить Продукт -> Анализ (Shift-Command-B).

...