2012-09-17 2 views
1

ARC를 사용하여 Cocos2D/Kobold2D 게임을 개발 중입니다. CCArray에 CCSprite 참조를 저장하려고합니다. 모든 CCSprite 객체는 부모 CCNode에 자식으로 추가됩니다. weak 참조에 대해 [NSValue valueWithNonretainedObject : ..]를 사용하여 CCSprite 객체를 래핑하는 것이 좋은 생각입니까? 모든 예제에서 나는 CCSprites가 CCArrays에 보존 된 것을 발견했다. ...Cocos2D/Kobold2D에서 CCSprites를 사용하는 CCArray

답변

0

실제로 NSValue를 사용할 필요가 없다.

NSArray 또는 CCArray 또는 컬렉션에 개체를 추가하면 해당 개체가 유지됩니다. 적절한 시간에 수집 된 컬렉션이 제거되었는지 확인하는 것은 사용자의 의무입니다.

많은 경우 실제로 노드 참조를 별도로 저장하지 않아도됩니다. children 배열을 가지고 반복하고, 작업 할 필요가있는 노드를 선택한다. 예를 들어, 태그를 달거나 userObject 속성을 사용한다.